亲宝软件园·资讯

展开

EasyUI实现二级页面的内容勾选的方法

人气:0

EasyUI,在增、删的时候,经常用到二级页面进行勾选。

可以在datagird下面添加onCheck、onUncheck、onSelectAll、onUnselectAll事件。

在这些事件中,将勾选的内容存到map中,并转换成json格式字符串放到隐藏域中。

复制代码 代码如下:

onCheck : function(rowIndex, rowData)
   if (rowIndex > -1) {
    var userId= rowData.id;
    if(!dataMap.containsKey(userId))
    {
     dataMap.put(userId, rowData);
      $("input[name=selectData]").val(JSON.stringify(dataMap));
    }
   }
  } ,
  onUncheck : function(rowIndex, rowData) {
   if (rowIndex > -1) {
    var userId= rowData.id;
    if( dataMap.containsKey(userId))
    {
     dataMap.remove(userId);
      $("input[name=selectData]").val(JSON.stringify(dataMap));    
    }
   }
  },
  onSelectAll:function(rows){
   for(var i=0;i<rows.length;i++){
     var rowData=rows[i];
     var userId= rowData.id;
     if(!dataMap.containsKey(userId))
     {
      dataMap.put(userId, rowData);
       $("input[name=selectData]").val(JSON.stringify(dataMap));
     }
   }
  },
  onUnselectAll:function(rows){
   for(var i=0;i<rows.length;i++){
     var rowData=rows[i];
     var userId= rowData.id;
     if( dataMap.containsKey(userId))
     {
      dataMap.remove(userId);
       $("input[name=selectData]").val(JSON.stringify(dataMap));    
     }
   }
  }

在父页面,获取隐藏域中的内容。

selectForm是二级页面的form表单的id,selectData是form表单中存放勾选数据的隐藏域。

将隐藏域中的数据转换成json格式,再用map的形式将数据一个个提取出来。

最后userId和rowData分别为map.elements[i].key和map.elements[i].value。

复制代码 代码如下:

var f = parent.$.modalDialogTwo.handler.find('#selectForm');
    var selectData = f.find('input[name="selectData"]').get(0).value;
    if (!selectData) {
     parent.$.messager.alert('提示', "请选择一条记录!");
     return;
    }
    var map = jQuery.parseJSON(selectData);
    if (map.elements.length > 0) {
     var nos = new Array();
     var names = new Array();
     for ( var i = 0; i < map.elements.length; i++) {
      var data = map.elements[i];
      nos.push(data.key);
      names.push(data.value.name);
     }

以上就是给大家分享的EasyUI实现二级页面的内容勾选的方法,希望对大家能够有所帮助。

加载全部内容

相关教程
猜你喜欢
用户评论