发表于: 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
评论