EasyUI,二级页面的内容勾选

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);
     }
时间: 2024-10-11 12:41:23

EasyUI,二级页面的内容勾选的相关文章

EasyUI,二级页面内容的操作

父页面获取子页面的数据 1.若仅仅是勾选,则将勾选的放到map中(key,value),key是能验证数据唯一的字段,value就是勾选行的rowData:    再将map转换成json格式的字符串,保存到隐藏域中:通过form表单提交,父页面可以获取数据.具体操作在这里:http://my.oschina.net/chinamummy29/blog/312675 2.若不仅勾选,还要填写其他内容,则不能用form提交.写一个方法parent.$.modalDialogTwo.save(){

jquery easyui datagrid 获取Checked选择行(勾选行)数据

原文:jquery easyui datagrid 获取Checked选择行(勾选行)数据 getSelected:取得第一个选中行数据,如果没有选中行,则返回 null,否则返回记录. getSelections:取得所有选中行数据,返回元素记录的数组数据. getChecked:取得checkbox选择行的数据,返回元素记录的数组数据. getSelected跟getSelections是选中行,而且getChecked是选择行. 选中行的意思就是,我们单击到某一个行,这个时候该行的背景色为

easyui Tree模拟级联勾选cascadeCheck,节点选择,父节点自动选中,节点取消,父节点自动取消选择,节点选择,所有子节点全部选择,节点取消,所有子节点全部取消勾选

最近项目中用到easyui tree,发现tree控件的cascadeCheck有些坑,不像miniui 的tree控件,级联勾选符合业务需求,所以就自己重新改写了onCheck事件,符合业务需求.网上百度了很多资料,都没有完全符合自己业务场景的,所以就自己动手写咯. 先说一下自己的业务需求: 1.选中节点,上级以及所有直系上级节点自动选中,所有下级子孙节点全部自动选中: 2.取消选择节点,如果兄弟节点都未选择,则上级以及所有直系上级节点自动取消选择,所有下级子孙节点全部取消选中. 这里说一下c

easyUI一览页面查询、导出功能

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <

ztree学习---将默认勾选的展开

这里只给出前台页面上的代码,数据可以从后台获取,注意,在封装数据的时候,注意:Id(节点的id,可以是数字也可以是字符串) , pid(父亲节点的id) , name(节点名称)不能少 . html页面插入的代码: <div id="dialog-confirm" class="hide"> <input type="hidden" id="uid" value=""/> <d

jquery easyui tab加载内容的几种方法

转:http://my.oschina.net/u/2331760/blog/391937?fromerr=saqeoxxB jQuery Easyui 的tabs插件有两种方式加载某个tab(标签页)上的内容:“href远程请求”和“content本地内容”,本文就两种方式的优缺点进行简单分析和思考. 两者特点: href方式加载数据的特点: content方式加载数据的特点: 简单总结: href常见问题: 1.href只加载目标URL的html片段 2.短暂的页面混乱: 3.html片段的

ExtJs实现复选框组Checkboxgroup单勾选及复选框组对多个复选框组跨控件全选

ExtJs实现复选框Checkboxgroup单勾选及跨控件全选 由于项目的需要,我们要将EXT的控件Checkboxgroup复选框组改造成但勾选,并且实现一个复选框组控制其他多个复选框组的全选,以下是关于如何实现的代码片段. 1.创建CheckboxGroup对象 1,新建空的EOS6.5的工程,新建com.towngas.tcis. gridlock构件包: 2,在com.towngas.tcis.gridlock构件包的"展现"节点下的"页面资源"节点中创建

checkbox设置复选框的只读效果不让用户勾选

在Web开发中,有时候需要显示一些复选框(checkbox),表明这个地方是可以进行勾选操作的,但是有时候是只想告知用户"这个地方是可以进行勾选操作的"而不想让用户在此处勾选(比如在信息展示页面),这时候就需要将复选框设置成只读的效果. 提到只读,很容易想到使用readonly属性,但是对于复选框来说,这个属性和期望得到的效果是有差别的.原因在于readonly属性关联的是页面元素的value属性(例如textbox,设置了readonly就不能修改输入框的文本内容),而复选框的勾选/

Android默认输入法勾选多国语言,并默认其中一种语言

1.首先在设备上调整输入法 设置>语言输入法>Android键盘(AOSP),在输入语言里勾选要选择的语言,比如选"英语(美国)"和"西班牙文"两种: 2.选择系统输入法的默认语言(默认为两种语言中的"西班牙文") 打开一个能能调出输入法的应用,下拉通知栏里,"选择输入法"调整为"西班牙文" 3.查看Setting数据库文件 adb pull data/data/com.android.prov