关于easyui checkbox 的一些操作处理

1、easyui在每一行加checkbox

  { field: 'id', title: '编号', checkbox: true }

2、easyui分页时记住前面已选的checkbox

  设置easyui的dField属性

  dField: 数据字段,一般为主键或唯一确定的字段

3、获取已勾选的行:

  var rows = $('#datagrid').datagrid('getChecked');

4、判断checkbox是否全选:

  var allFlg = $(".datagrid-header-check").find("input").is(":checked");

5、checkbox在弹出层的,记住选中的checkbox,再次弹出弹出层时,将已选的checkbox回设

  先将已选的checkbox该行的idField存进全局变量数组 

  // 保存已选的checkbox
  var checkboxs = new Array();

  function selectCheckBox() {

    var rows = $('#datagrid').datagrid('getChecked');//获取已勾选的行

    checkboxs = new Array();//全局变量 

    注:这里要重新new,不然会保留上一次的勾选结果

    for (var i = 0; i < rows.length; i++) {
      checkboxs [i] = (rows[i][idField的值]);
      }
  }

  下次进来时执行

  onLoadSuccess: function (data) {

    if (data.rows.length > 0) {
      for (var i = 0; i < data.rows.length; i++) {

        //判断该idField是否为数组中的元素
        if (checkboxs .in_array(data.rows[i].idField的值)) {

          //将该index的行的checkbox勾上
          $("#datagrid").datagrid("selectRow", i);
        }
      }
    }
  },

  // 判断字符串是否是数组里的元素
  Array.prototype.in_array = function (element) {
    for (var i = 0; i < this.length; i++) {
      if (this[i] == element) {
        return true;
      }
    }
    return false;
  }  

posted @ 2017-07-09 23:04  公子苏苏苏  阅读(4053)  评论(0编辑  收藏  举报