Posted in Javascript onMarch 01, 2015
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实现二级页面的内容勾选的方法,希望对大家能够有所帮助。
EasyUI实现二级页面的内容勾选的方法
- Author -
hebedich声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@