######保存角色,add表单页面Ajax传参给action,多个集合属性,【较为复杂的页面传参(封装ajax json参数)】:注意表单数据序列化,jquery遍历,json对象转String
2017-11-10 21:58
1046 查看
================页面封装 角色对象 的参数数据。分别封装 权限 和菜单 属性数据。
注意jquery遍历,json对象转String,表单数据序列化(===经测试,序列化 无法封装全部的CheckBox数据(权限和菜单 数据 是多选框))。
注意jquery遍历,json对象转String,表单数据序列化(===经测试,序列化 无法封装全部的CheckBox数据(权限和菜单 数据 是多选框))。
//====== 点击保存 $('#save').click(function(){ //location.href='role.html'; var formData = $("#roleForm").serializeJSON();// 权限数据只封装了最后一个 (chebox)。 //==========1、封装权限数据 var checkArr = $("input[name='permissionIds'][checked='checked']")//不行 //alert(checkArr.length);//0 ==选择器这样写不对。 checkArr = $("input[name='permissionIds']:checked"); //alert(checkArr.length);//3 var permissionIds = new Array(); //===========================js对象方式。==ok /* for (var i = 0; i < checkArr.length; i++) { //alert("this:"+this); //alert("$(this).val():"+$(this).val());//===.val()只能在each函数内用。 //permissionIds.push(checkArr[i].val());//===.val()只能在each函数内用。 alert("checkArr[i].value:"+checkArr[i].value);//===js对象方式。==ok permissionIds.push(checkArr[i].value);//===id值加入数组 } */ //===========================jquery对象方式。==ok checkArr.each(function(){ //alert("$(this).val()==="+$(this).val()); permissionIds.push($(this).val());//===id值加入数组 }); //permissionIds = permissionIds。.join(",");//报错:Invalid or unexpected token :符号不对。 permissionIds = permissionIds.join(","); formData["permissionIds"] = permissionIds; //==========2、封装菜单数据 var treeObj = $.fn.zTree.getZTreeObj("menuTree"); var nodes = treeObj.getCheckedNodes(true); var menuIds = new Array(); /* nodes.each(function(){ //============nodes没each方法 alert("$(this).val()==="+$(this).val()); menuIds.push($(this).val());//===id值加入数组 }); */ alert("nodes.length==="+nodes.length) for (var i = 0; i < nodes.length; i++) { //alert("menuIds[i].id==="+nodes[i].id); menuIds.push(nodes[i].id);//===id值加入数组.===######=每一项menu都拿到。不论父子(都是一个menu对象)===自关联。 } menuIds = menuIds.join(","); formData["menuIds"] = menuIds; //formData = JSON.stringify(formData);//==#####=只在测试用,查看数据。传参,json对象,不是String(导致传参失败!!!) //alert(formData); //return; //====参数是json对象,不是String //==== if ($("#roleForm").form("validate")) { $.post("../../roleAction_save.action",formData,function(data){ if (data.success) { $.messager.alert("提示",data.message); location.href='role.html'; } else { $.messager.alert("提示",data.message); } }); } });
相关文章推荐
- ###Springmvc封装复杂表单数据:表单提交多个实体类的参数【对象类型参数,自动封装】name属性值不能重复。和实体类属性名一致
- Jquery如何序列化form表单数据为JSON对象 C# ADO.NET中设置Like模糊查询的参数 从客户端出现小于等于公式符号引发检测到有潜在危险的Request.Form 值 jquery调用iframe里面的方法 Js根据Ip地址自动判断是哪个城市 【我们一起写框架】MVVM的WPF框架(三)—数据控件 设计模式之简单工厂模式(C#语言描述)
- Jquery 将表单序列化为Json对象.同时提交多个表单的参数
- ajax异步加载解析复杂json(集合中包含对象,对象中包含对象)数据
- Jquery 将表单序列化为Json对象.同时提交多个表单的参数
- jQuery序列化form表单数据为JSON对象的实现方法
- Jquery 将表单序列化为Json对象.同时提交多个表单的参数
- 关于ASP.NET下,JQuery+AJAX使用JSON返回对象集合List数据的总结
- 将任意一个jQuery对象进行表单序列化,免除了提交请求时大量拼写表单数据的烦恼,支持键值对<name&value>格式和JSON格式。
- jquery中ajax向action传递对象参数,json ,spring注入对象
- jquery序列化form表单使用ajax提交后处理返回的json数据
- jquery序列化form表单使用ajax提交后处理返回的json数据
- 将form表单里的数据封装成对象 json2.js的例子 jquery的serialize方法转换空格为+号的解决方法
- Jquery如何序列化form表单数据为JSON对象
- jquery序列化form表单使用ajax提交后处理返回的json数据
- Jquery --- 将表单form数据序列化成json对象
- 表单序列化与反序列化JSON对象(基于jQuery)
- jQuery调用WebService返回JSON数据及参数设置注意问题
- Jquery 将表单序列化为Json对象
- Ajax使用Action中返回的Json数据的完整实例(二):action内将一个实体对象转化为json并返回