jquery EasyUI二级页面内容勾选入门例子

发布时间:2020-07-21编辑:脚本学堂
jquery easyui实现二级页面内容的勾选操作,将勾选的内容存到map中,并转换成json格式字符串放到隐藏域中,效果不错。

二级页面进行勾选(jquery easyui)

EasyUI,在增、删的时候,经常用到二级页面进行勾选。
可以在datagird下面添加onCheck、onUncheck、onSelectAll、onUnselectAll事件。
在这些事件中,将勾选的内容存到map中,并转换成json格式字符串放到隐藏域中。

例1:
 

复制代码 代码示例:
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。

例2:
 

复制代码 代码示例:
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);
 }