需求:
由于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进行简单的改写,实现我们的效果!