效果图

$(function () {

var logBussnessAgentData = [];

var logInspectionEngineerData = [];

//选中

$("#btnRight").click(function () {

var data_left = $('#datagrid_left').datagrid('getChecked');

var data_rigt = $('#datagrid_right').datagrid('getRows');

var data_rigt_count = data_rigt.length;

if (data_left) {

if (data_left.length > 0) {

var flag = 0;

for (var i = data_left.length - 1; i >= 0; i--) {

if (data_rigt_count > 0) {

flag = 0;

for (var j = data_rigt.length - 1; j >= 0; j--) {

if (data_left[i].ID == data_rigt[j].ID) {

flag = 1;

continue;

}

}

if (flag == 0) {

var DutyRangeAgentObj = new Object();

DutyRangeAgentObj.ID = data_left[i].ID;

DutyRangeAgentObj.AuthorityCode = data_left[i].AuthorityCode;

DutyRangeAgentObj.AuthorityName = data_left[i].AuthorityName;

logInspectionEngineerData.push(DutyRangeAgentObj);

var rowIndexlogSearch = $('#datagrid_left').datagrid('getRowIndex', data_left[i]);

$('#datagrid_left').datagrid('deleteRow', rowIndexlogSearch);

}

else {

var rowIndexlogSearch = $('#datagrid_left').datagrid('getRowIndex', data_left[i]);

if (rowIndexlogSearch > -1) {

$('#datagrid_left').datagrid('deleteRow', rowIndexlogSearch);

}

}

} else {

var DutyRangeAgentObj = new Object();

DutyRangeAgentObj.ID = data_left[i].ID;

DutyRangeAgentObj.AuthorityCode = data_left[i].AuthorityCode;

DutyRangeAgentObj.AuthorityName = data_left[i].AuthorityName;

logInspectionEngineerData.push(DutyRangeAgentObj);

var rowIndexlogSearch = $('#datagrid_left').datagrid('getRowIndex', data_left[i]);

$('#datagrid_left').datagrid('deleteRow', rowIndexlogSearch);

}

}

$("#datagrid_right").datagrid("loadData", logInspectionEngineerData);

}

else {

$.messager.alert('警告', '请选择要设置的权限', "warning");

return;

}

}

});

//移除

$("#btnLeft").click(function () {

var DataRight = $('#datagrid_right').datagrid('getChecked');

var DataRight_Count = DataRight.length;

if (DataRight) {

if (DataRight_Count > 0) {

$.each(DataRight, function (index, item) {

var rowIndexlogSearch = $('#datagrid_right').datagrid('getRowIndex', item);

$('#datagrid_right').datagrid('deleteRow', rowIndexlogSearch);

});

}

else {

$.messager.alert('警告', '请选择要删除数据', "warning");

return;

}

}

});

//选中全部

$("#btnRightAll").click(function () {

var data_left = $('#datagrid_left').datagrid('getRows');

var data_right = $('#datagrid_right').datagrid('getRows');

var data_right_count = data_right.length;

if (data_left) {

if (data_left.length > 0) {

var flag = 0;

for (var i = data_left.length - 1; i >= 0; i--) {

if (data_right_count > 0) {

flag = 0;

for (var j = data_right.length - 1; j >= 0; j--) {

if (data_left[i].ID == data_right[j].ID) {

flag = 1;

continue;

//return true;

}

}

if (flag == 0) {

var DutyRangeAgentObj = new Object();

DutyRangeAgentObj.ID = data_left[i].ID;

DutyRangeAgentObj.AuthorityCode = data_left[i].AuthorityCode;

DutyRangeAgentObj.AuthorityName = data_left[i].AuthorityName;

logBussnessAgentData.push(DutyRangeAgentObj);

var rowIndexlogSearch = $('#datagrid_left').datagrid('getRowIndex', data_left[i]);

$('#datagrid_left').datagrid('deleteRow', rowIndexlogSearch);

}

else {

var rowIndexlogSearch = $('#datagrid_left').datagrid('getRowIndex', data_left[i]);

if (rowIndexlogSearch > -1) {

$('#datagrid_left').datagrid('deleteRow', rowIndexlogSearch);

}

}

} else {

var DutyRangeAgentObj = new Object();

DutyRangeAgentObj.ID = data_left[i].ID;

DutyRangeAgentObj.AuthorityCode = data_left[i].AuthorityCode;

DutyRangeAgentObj.AuthorityName = data_left[i].AuthorityName;

logBussnessAgentData.unshift(DutyRangeAgentObj);

var rowIndexlogSearch = $('#datagrid_left').datagrid('getRowIndex', data_left[i]);

$('#datagrid_left').datagrid('deleteRow', rowIndexlogSearch);

}

}

$("#datagrid_right").datagrid("loadData", logBussnessAgentData);

}

else {

$.messager.alert('警告', '请选择要设置的权限', "warning");

return;

}

}

});

//移除全部

$("#btnLeftAll").click(function () {

var datagrid_right = $('#datagrid_right').datagrid('getRows');

var datagrid_right_count = datagrid_right.length;

if (datagrid_right) {

if (datagrid_right_count > 0) {

$.each(datagrid_right, function (index, item) {

var rowIndexlogSearch = $('#datagrid_right').datagrid('getRowIndex', item);

$('#datagrid_right').datagrid('deleteRow', rowIndexlogSearch);

});

}

else {

msg.alertMsg("请选择要删除数据!");

return;

}

}

});

//查询

$("#btn_search2").click(function () {

$('#datagrid_left').datagrid('load', {

syscode: $.trim($('#q_systemcode').val()),

code: $.trim($('#q_authoritycode2').val()),

name: $.trim($('#q_authorityname2').val())

});

});

//左表格

$('#datagrid_left').datagrid({

width: 300,

height: 200,

url: '/bll/RoleAuthority.ashx',

rownumbers: true,

singleSelect: false,

loadMsg: "正在努力加载数据,请稍后...",

striped: true,

collapsible: false,

animate: true,

columns: [[

{ field: 'ck', checkbox: true },

{ field: 'ID', title: 'ID', hidden: true },

{

title: '权限代码', field: 'AuthorityCode', align: 'left', width: 100

},

{

title: '权限名称', field: 'AuthorityName', align: 'left', width: 150

}

]]

});

/*保存设置权限*/

$('#authority_power').dialog({

width: 670,

title: '角色权限配置',

modal: true,

closed: true,

iconCls: 'icon-user-add',

buttons: [{

text: '提交',

iconCls: 'icon-add',

handler: function () {

var rightData = $('#datagrid_right').datagrid('getRows');

var order = [];

$.each(rightData, function (index, item) {

order.push(item.ID);

});

var values = order.join('$');

$.getJSON('/bll/RoleAuthority.ashx',

{

step: "set",

id: $("#hid_id2").val(),

systemcode_edit: $('#systemcode_edit').val(),

powerids: values

}, function (json) {

var msg = eval(json);

console.log("111返回数据:" + JSON.stringify(msg));

if (parseInt(msg.result) == 1) {

$.messager.show({

title: '提示',

msg: '权限设置成功'

});

$('#authority_edit').dialog('close').form('reset');

$('#authority').datagrid('reload');

} else {

$.messager.alert('权限设置失败!', msg.message, 'warning');

}

});

}

}, {

text: '取消',

iconCls: 'icon-redo',

handler: function () {

$('#authority_add').dialog('close').form('reset');

}

}]

});

});

<form id="authority_power" style="margin: 0; padding: 5px 0 0 5px; color: #333;">

<input id="hid_id2" type="hidden" value="" />

<div style="padding:5px;">

<label style="margin-left: 10px">权限代号:</label><input type="text" class="textbox" id="q_authoritycode2" style="width: 110px"/>

<label style="margin-left: 10px">权限名称:</label><input type="text" class="textbox" id="q_authorityname2" style="width: 110px"/>

<input id="btn_search2" type="button" value="查询" />

</div>

<div>

<table>

<tr>

<td>

<table id="datagrid_left"></table>

</td>

<td>

<table style="width: 30px;">

<tr>

<td>

<a id="btnRight" title="选中" href="javascript:void(0);">

<img src="../libs/static/easyui/themes/default/images/arrow_right.png" alt="选中" /></a>

</td>

</tr>

<tr>

<td>

<a id="btnLeft" title="移除"  href="javascript:void(0);">

<img src="../libs/static/easyui/themes/default/images/arrow_left.png"  alt="移除"  /></a>

</td>

</tr>

<tr>

<td>

  1. <a id="btnRightAll" title="选中全部"  href="javascript:void(0);">
  2. <img src="../libs/static/easyui/themes/default/images/resultset_last.png"  alt="选中全部"  /></a>
  3. </td>
  4. </tr>
  5. <tr>
  6. <td>
  7. <a id="btnLeftAll" title="移除全部"  href="javascript:void(0);">
  8. <img src="../libs/static/easyui/themes/default/images/resultset_first.png" alt="移除全部"  /></a>
  9. </td>
  10. </tr>
  11. </table>
  12. </td>
  13. <td>
  14. <table id="datagrid_right"></table>
  15. </td>
  16. </tr>
  17. </table>
  18. </div>
  19. </form>

eaysui 利用datagrid 实现左右移除数据的更多相关文章

  1. ASP.NET网页生成EXCEL并下载(利用DataGrid或GridView等)

    前几天要在后台查询数据库内容(用entity framework),将查询出来的信息(List或DataTable形式)转成EXCEL供用户下载.经过谷歌.百度搜索,终于搜出了一些代码.似乎可用了,结 ...

  2. C#利用SqlDataAdapte对DataTable进行批量数据操作

    C#利用SqlDataAdapte对DataTable进行批量数据操作,可以让我们大大简化操作数据的代码量,我们几乎不需要循环和不关心用户到底是新增还是修改,更不用编写新增和修改以及删除的SQL语句, ...

  3. 【转】asp.net中利用session对象传递、共享数据[session用法]

    来自:http://blog.unvs.cn/archives/session-transfer-method.html 下面介绍Asp.net中利用session对象传递.共享数据用法: 1.传递值 ...

  4. (转)扩展jquery easyui datagrid 之动态绑定列和数据

    本文转载自:http://blog.csdn.net/littlewolf766/article/details/7336550 easyui datagrid 不支持动态加载列,上次使用的方法是自己 ...

  5. asp.net中利用session对象传递、共享数据[session用法]

    下面介绍Asp.net中利用session对象传递.共享数据用法: 1.传递值: 首先定义将一个文本值或单独一个值赋予session,如下: session[“name”]=textbox1.text ...

  6. 利用jQuery接受和处理xml数据

    使用jQuery+Servlet接受和处理xml数据,模拟判断用户名是否存在,效果如下: 服务器端 package com.ljq.test; import javax.servlet.http.Ht ...

  7. 利用python将mysql中的数据导入excel

    Python对Excel的读写主要有xlrd.xlwt.xlutils.openpyxl.xlsxwriter几种. 如下分别利用xlwt和openpyxl将mysql数据库中查询的数据保存到exce ...

  8. EasyUI中, datagrid用loadData方法绑定数据。

    $("#dg").datagrid("loadData", { , " }, { "ck": "1", &qu ...

  9. easyui combobox 在datagrid中动态加载数据

    场景:datagrid 中用编辑框修改数据,有一个列使用的combobox  在可编辑的时候需要动态绑定数据,这个数据是在根据其他条件可变的 思路:在每次开启编辑框的时候动态绑定数据, datagri ...

随机推荐

  1. 深入理解js的prototype以及prototype的一些应用

    上一篇讲了js的prototype概念,在这里回顾一下prototype的定义: prototype是函数的一个属性,并且是函数的原型对象.引用它的必然是函数,这个应该记住. 但是,很奇怪,各位看官, ...

  2. shell中{}的妙用

    shell中${}的妙用   1. 截断功能 ${file#*/}:       拿掉第一条/及其左边的字符串:dir1/dir2/dir3/my.file.txt ${file##*/}:    拿 ...

  3. LINUX 设置ll的时候显示日期的格式

    1.临时更改显示样式,当回话结束后恢复原来的样式 export TIME_STYLE='+%Y-%m-%d %H:%M:%S'    # 直接在命令中执行即可 2.永久改变显示样式,更改后的效果会保存 ...

  4. setTimeout调用带参数的函数的方法

    function test(s){    alert(s);}window.setTimeout(function(){test('str');},1000);这样就可以了...为什么是这样呢.因为s ...

  5. UIWebView中加载HTML的Table,td设置百分比宽度并且宽度不被里面的内容撑开

    正常情况下,iOS使用WebView加载HTML的Table时,为了让Table适应屏幕宽度,会使用百分比设置td的宽度,但是由于td中的内容过多,td会被撑开,导致整个Table的宽度会变宽,超出屏 ...

  6. Java网络编程之流——流、过滤器、阅读器和书写器

    Java的I/O建立于流(Stream)之上.输入流读取数据:输出流写入数据.所有的输出流都有相同的基本方法来写入数据,所有输入流也使用相同的基本方法来读取数据.在创建流之后,你通常可以忽略在读写时的 ...

  7. PHP 使用编码树,生成easyui中的tree样式

    生成树的时候,数据库中一般设计的都为无级数,即为:父子节点的树,例如:基本的数据表设计为: nodecode 节点编码 parentnodecode 父节点编码 nodename  节点名称 这样的形 ...

  8. 夺命雷公狗-----React---27--小案例之react经典案例todos(清除已完成)

    这个功能其实也是很简单的,就只是让todos里面的内isDown进行取反即可 然后在Zong里面进行下修改即可 效果如下所示: 代码如下所示: <!DOCTYPE html> <ht ...

  9. HTML5&CSS3练习笔记(一)

    属性选择器的用法 格式:[属性/^/*/$=值] 1.[attr=val] 匹配指定值的元素 <div> <div id="section1"> 完全匹配元 ...

  10. app加固

    为什么要加固APP? 答:因为黑客通过反编译APK得到源码后,会在应用中插入代码,获取利益,比如添加广告,盗取用户账号.密码,后台定制活动等.   反编译的方法? 反编译是指apk文件通过反编译工具( ...