需求:
由于easyui只有添加一条记录,删除一条记录的实现方式,但是对于批量删除和添加的功能却没有,而我们需要的是使用复选框批量绑定数据,固在此基础上修改!
核心思路:
easyui中datagrid的getSelections的方法:
msdn解释:
返回所有被选择的行,当没有记录被选择时,将返回一个空数组。
将getSelections方法得到的数组,赋给字符串用“|”隔开,之后传到一般处理程序处,再使用“|”将数据分开循环获取id值,然后将数据循环添加的数据库中即可!
<script type="text/javascript"> var url; function newUser() { $(‘#fm‘).form(‘clear‘); var row = $(‘#dg‘).datagrid(‘getSelections‘); var msg; msg = row[0].Id; if (row.length > 1) { for (var i = 1; i < row.length; i++) { msg = msg + "|" + row[i].Id; } } document.getElementById("test").value = "add";//设定表示为后台调不同方法数据提供接口 var test = document.getElementById("test").value; var roleID; roleID = $(‘#RoleName‘).combobox(‘getValue‘); if (row) { $(‘#form1‘).form(‘submit‘, { url: "AdmRoleWindowsRelative.ashx?Id=" + msg + "&roleID=" + roleID + "&test=" + test, //url: "AdmAddMenu.ashx?Id=" + Id + "&MenuName=" + MenuName + "&MenuDescribe=" + MenuDescribe + "&test=" + test, onSubmit: function () { }, //判断结果是否正确 success: function (result) { if (result.indexOf("T") == 0) { $(‘#dlg‘).dialog(‘close‘); alert(‘恭喜您,信息绑定成功!‘) // close the dialog $(‘#dg‘).datagrid(‘reload‘); //$(‘#fm‘).form(‘submit‘); } else if (result.indexOf("E") == 0) { alert(‘绑定失败,此绑定已经存在,请查看已绑定页面!‘) $(‘#dg‘).datagrid(‘reload‘); } else { alert(‘绑定失败,请联系管理员!‘) } var result = eval(‘(‘ + result + ‘)‘); } }); } } </script>
/// <summary> /// 添加记录 /// </summary> /// <param name="context"></param> public void Add(HttpContext context) { EvaluationSystem.Model.RoleWindowEntity enRoleWindows = new Model.RoleWindowEntity(); string strId = context.Server.UrlDecode(context.Request.QueryString["Id"]); string roleId=context.Server.UrlDecode(context.Request.QueryString["roleID"]); string[] strids = strId.ToString().Split(‘|‘); string blD; blD = "true"; for (int i = 0; i < strids.Length; i++) { enRoleWindows.WindowsID = strids[i].ToString(); enRoleWindows.RoleID=roleId; if (roleWindowsBll.Exists(enRoleWindows) == false) { if (!roleWindowsBll.Add(enRoleWindows)) { blD = "false"; } } else { blD = "exists"; } } //enRoleWindows.Id = context.Server.UrlDecode(context.Request.QueryString["ID"]); //转向首页 //caresBasicInfoEntity. = context.Session["AdminName"].ToString(); if (blD=="true") { context.Response.Write("T"); } else if (blD == "false") { context.Response.Write("F"); } else { context.Response.Write("E"); } context.Response.ContentType = "text/plain"; }
总结:
这段时间做市委组织部考核项目对easyui有了一个简单的理解。jQueryEasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。开发者不需要编写复杂的javascript,也不需要对css样式有深入的了解,开发者需要了解的只有一些简单的html标签。对于敏捷开发来说真的是个不错的选择,而且我们可以将EasyUI进行简单的改写,实现我们的效果!