jQuery Easyui datagrid editor为combobox时指定数据源实例


Posted in Javascript onDecember 19, 2016

当在datagrid行内部应用添加编辑操作时,引入combobox是非常方便的操作,我在引入combobox时对数据源这快做个总结,在做demo的过程中遇到个问题,就是当你选择了下拉框的值后点击保存,此时显示的是value值,而不是text值,这时使用格式化函数解决此问题。

var Address = [{ "value": "1", "text": "CHINA" }, { "value": "2", "text": "USA" }, { "value": "3", "text": "Koren" }];

function unitformatter(value, rowData, rowIndex) {

  if (value == 0) {

    return;

  }

 

  for (var i = 0; i < Address.length; i++) {

    if (Address[i].value == value) {

      return Address[i].text;

    }

  }

}

function GetTable() {

  var editRow = undefined;

  $("#Student_Table").datagrid({

    height: 300,

    width: 450,

    title: '学生表',

    collapsible: true,

    singleSelect: true,

    url: '/Home/StuList',

    idField: 'ID',

    columns: [[

     { field: 'ID', title: 'ID', width: 100 },

      { field: 'Name', title: '姓名', width: 100, editor: { type: 'text', options: { required: true } } },

      { field: 'Age', title: '年龄', width: 100, align: 'center', editor: { type: 'text', options: { required: true } } },

      { field: 'Address', title: '地址', width: 100, formatter: unitformatter, align: 'center', editor: { type: 'combobox', options: { data: Address, valueField: "value", textField: "text" } } }

    ]],

    toolbar: [{

      text: '添加', iconCls: 'icon-add', handler: function () {

        if (editRow != undefined) {

          $("#Student_Table").datagrid('endEdit', editRow);

        }

        if (editRow == undefined) {

          $("#Student_Table").datagrid('insertRow', {

            index: 0,

            row: {}

          });

          $("#Student_Table").datagrid('beginEdit', 0);

          editRow = 0;

        }

      }

    }, '-', {

      text: '保存', iconCls: 'icon-save', handler: function () {

        $("#Student_Table").datagrid('endEdit', editRow);

        //如果调用acceptChanges(),使用getChanges()则获取不到编辑和新增的数据。

        //使用JSON序列化datarow对象,发送到后台。

        var rows = $("#Student_Table").datagrid('getChanges');

        var rowstr = JSON.stringify(rows);

        $.post('/Home/Create', rowstr, function (data) {

        });

      }

    }, '-', {

      text: '撤销', iconCls: 'icon-redo', handler: function () {

        editRow = undefined;

        $("#Student_Table").datagrid('rejectChanges');

        $("#Student_Table").datagrid('unselectAll');

      }

    }, '-', {

      text: '删除', iconCls: 'icon-remove', handler: function () {

        var row = $("#Student_Table").datagrid('getSelections');

      }

    }, '-', {

      text: '修改', iconCls: 'icon-edit', handler: function () {

        var row = $("#Student_Table").datagrid('getSelected');

        if (row != null) {

          if (editRow != undefined) {

            $("#Student_Table").datagrid('endEdit', editRow);

          }

          if (editRow == undefined) {

            var index = $("#Student_Table").datagrid('getRowIndex', row);

            $("#Student_Table").datagrid('beginEdit', index);

            editRow = index;

            $("#Student_Table").datagrid('unselectAll');

          }

        } else {

        }

      }

    }, '-', {

      text: '上移', iconCls: 'icon-up', handler: function () {

        MoveUp();

      }

    }, '-', {

      text: '下移', iconCls: 'icon-down', handler: function () {

        MoveDown();

      }

    }],

    onAfterEdit: function (rowIndex, rowData, changes) {

      editRow = undefined;

    },

    onDblClickRow: function (rowIndex, rowData) {

      if (editRow != undefined) {

        $("#Student_Table").datagrid('endEdit', editRow);

      }

      if (editRow == undefined) {

        $("#Student_Table").datagrid('beginEdit', rowIndex);

        editRow = rowIndex;

      }

    },

    onClickRow: function (rowIndex, rowData) {

      if (editRow != undefined) {

        $("#Student_Table").datagrid('endEdit', editRow);

      } 

    }

  });

}

效果图:

 jQuery Easyui datagrid editor为combobox时指定数据源实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript DOM 添加事件
Feb 14 Javascript
基于jquery的使ListNav兼容中文首字拼音排序的实现代码
Jul 10 Javascript
js判断是否为数组的函数: isArray()
Oct 30 Javascript
关于extjs4如何获取grid修改后的数据的问题
Aug 07 Javascript
JS数组去掉重复数据只保留一条的实现代码
Aug 11 Javascript
微信小程序 基础组件与导航组件详细介绍
Feb 21 Javascript
ES6新特性之模块Module用法详解
Apr 01 Javascript
利用node.js写一个爬取知乎妹纸图的小爬虫
May 03 Javascript
node.js-v6新版安装具体步骤(分享)
Sep 06 Javascript
jquery手机触屏滑动拼音字母城市选择器的实例代码
Dec 11 jQuery
jQuery实现判断上传图片类型和大小的方法示例
Apr 11 jQuery
vue进入页面时不在顶部,检测滚动返回顶部按钮问题及解决方法
Oct 30 Javascript
vue项目中做编辑功能传递数据时遇到问题的解决方法
Dec 19 #Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
Dec 19 #Javascript
Jquery Easyui表单组件Form使用详解(30)
Dec 19 #Javascript
基于JavaScript实现自动更新倒计时效果
Dec 19 #Javascript
Bootstrap的基本应用要点浅析
Dec 19 #Javascript
详解javascript获取url信息的常见方法
Dec 19 #Javascript
js封装tab标签页实例分享
Dec 19 #Javascript
You might like
thinkphp配置连接数据库技巧
2014/12/02 PHP
从零开始学习jQuery (三) 管理jQuery包装集
2011/02/23 Javascript
JavaScript 产生不重复的随机数三种实现思路
2012/12/13 Javascript
关于jquery input textare 事件绑定及用法学习
2013/04/03 Javascript
移动节点的jquery代码
2014/01/13 Javascript
图文详解Javascript中的上下文和作用域
2017/02/15 Javascript
详解用node.js实现简单的反向代理
2017/06/26 Javascript
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
JS实现简单表格排序操作示例
2017/10/07 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
详解nvm管理多版本node踩坑
2019/07/26 Javascript
[01:13]DOTA2群星解读国服召集令 一起说出回归的理由
2013/07/17 DOTA
使用Python判断质数(素数)的简单方法讲解
2016/05/05 Python
Python实现的异步代理爬虫及代理池
2017/03/17 Python
神经网络理论基础及Python实现详解
2017/12/15 Python
python把数组中的数字每行打印3个并保存在文档中的方法
2018/07/17 Python
JSON文件及Python对JSON文件的读写操作
2018/10/07 Python
Python搭建Spark分布式集群环境
2019/07/05 Python
Python实现生成密码字典的方法示例
2019/09/02 Python
使用Python操作ArangoDB的方法步骤
2020/02/02 Python
Python 实现使用空值进行赋值 None
2020/03/12 Python
Python Selenium模块安装使用教程详解
2020/07/09 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
2020/09/23 Python
巴西葡萄酒销售网站:Wine.com.br
2017/11/07 全球购物
The North Face意大利官网:服装、背包和鞋子
2020/06/17 全球购物
介绍一下SQL中union,intersect和minus
2012/04/05 面试题
C#中有没有静态构造函数,如果有是做什么用的?
2016/06/04 面试题
php优化查询foreach代码实例讲解
2021/03/24 PHP
学生发电厂实习自我鉴定
2013/09/22 职场文书
医生实习工作总结的自我评价
2013/09/27 职场文书
群众路线领导班子四风对照检查材料
2014/09/27 职场文书
房屋产权证明书
2014/10/15 职场文书
党员教师群众路线思想汇报范文
2014/10/28 职场文书
高中军训感想
2015/08/07 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书