发表于: 2017-08-03 13:18:36

1 1025


今天完成的:

看了老大的DAL视频

收获:

1.@value()注解可以直接从properties文件读取属性

2.学会使用kindEditor和一些jquery语句。

JS:

<script type="text/javascript">
   var itemAddEditor;
   //页面初始化完毕后马上执行此方法,$()里直接function函数。jq是js的框架,其实就是js的一个函数,用$表示
   //调用jq函数就表示为$()
   $(function () {
//创建富文本编辑器,设置id选择器的name属性为desc,Kindeditor的对象是itemAddEditor
       itemAddEditor = TAOTAO.createEditor("#itemAddForm [name=desc]");
       //初始化类目选择和图片上传器
       TAOTAO.init({
fun: function (node) {
//根据商品的分类id取商品 的规格模板,生成规格信息。第四天内容。
               TAOTAO.changeItemParam(node, "itemAddForm");
           }
});
   });

   //提交表单
   function submitForm() {
//有效性验证,基于jQuery的表单验证插件validate,必填字段不可为空
       if (!$('#itemAddForm').form('validate')) {
//$.messager.alert()是easyUI提供的alert样式
           $.messager.alert('提示', '表单还未填写完成!');
           return;
       }
//取商品价格的属性,单位为“分”将其变为元。eval()函数可计算某个字符串,并执行其中的的js代码
       $("#itemAddForm [name=price]").val(eval($("#itemAddForm [name=priceView]").val()) * 100);
       //同步文本框中的商品描述
       itemAddEditor.sync();
       //取商品的规格,将参数模板中的数据插入------------------------
       var paramJson = [];
       //i为循环次数,e是一个js对象
       $("#itemAddForm .params li").each(function (i, e) {
//将js对象转为jq对象,调用find方法找到行
           var trs = $(e).find("tr");
           //eq()方法取出第0号元素的text
           var group = trs.eq(0).text();
           var ps = [];
           for (var i = 1; i < trs.length; i++) {
var tr = trs.eq(i);
               //数组的push函数添加
               ps.push({
//构造json结构的数据
                   "k": $.trim(tr.find("td").eq(0).find("span").text()),
                   "v": $.trim(tr.find("input").val())
});
           }
paramJson.push({
"group": group,
               "params": ps
});
           /*最后生成的json结构
           [
   {
       "group": "主体",
       "params": [
           {
               "k": "品牌",
               "v": "苹果(Apple)"
           }
       ]
   }
]
            */

       });
       //把json对象转换成字符串
       paramJson = JSON.stringify(paramJson);
       $("#itemAddForm [name=itemParams]").val(paramJson);
       //ajax的post方式提交表单
       //$("#itemAddForm").serialize()将表单序列号为key-value形式的字符串。
       //ajax的get方法用于接收数据。post方式一般用于发送数据。$.post(URL,data,callback);
       //URL为请求的URL,data为随请求发送的数据,callback为请求成功后执行的函数
       $.post("/item/save", $("#itemAddForm").serialize(), function (data) {
//serialize()方法通过序列化表单值,创建 URL 编码文本字符串。创建的格式为Name=zhangsan&password=123
           if (data.status == 200) {
$.messager.alert('提示', '新增商品成功!');
           }
});
   }

function clearForm() {
$('#itemAddForm').form('reset');
       itemAddEditor.html('');
   }
</script>

controller:

/*
接受了js传来的序列化参数,包含kindEditor的描述,模板参数,Tbitem实体
*/
@RequestMapping(value = "/item/save", method = RequestMethod.POST)
@ResponseBody
/*这里也可不用注解,springMVC可直接用形参接收前台参数(对象也可以,不用注解也能自动注入)。但名必须一样,
名不一样就用注解@ModelAttribute或@requestParam指定要接受参数的名
*/
public TaotaoResult createItem(@ModelAttribute TbItem item, String desc, String itemParams) {
TaotaoResult result = itemService.createItem(item, desc, itemParams);
   return result;
}


遇到的问题:

1.dal中的resource表还在研究

明天的计划:

跑通dal生成的web


返回列表 返回列表
评论

    分享到