jQuery Easyui学习之datagrid 动态添加、移除editor


Posted in Javascript onJanuary 27, 2016

 使用easyui行编辑的时候完成编辑的功能比较简单,但是如果要根据一个框的值动态改变别的值或者编辑的时候禁用某个框的时候就比较麻烦了。

比如像下面这样:添加行的时候每个值都是手动输入,修改的时候第一个值不能修改。我们来看下怎么实现这样的效果。

jQuery Easyui学习之datagrid 动态添加、移除editor

easyui本身是不提供这么细节的功能的,需要我们自己拓展下:

在编辑的时候移除第一列的editor属性,添加的时候,添加第一列的属性。

//扩展datagrid:动态添加删除editor
$.extend($.fn.datagrid.methods, { 
addEditor : function(jq, param) { 
if (param instanceof Array) { 
$.each(param, function(index, item) { 
var e = $(jq).datagrid('getColumnOption', item.field); 
e.editor = item.editor; }); 
} else { 
var e = $(jq).datagrid('getColumnOption', param.field); 
e.editor = param.editor; 
} 
}, 
removeEditor : function(jq, param) { 
if (param instanceof Array) { 
$.each(param, function(index, item) { 
var e = $(jq).datagrid('getColumnOption', item); 
e.editor = {}; 
}); 
} else { 
var e = $(jq).datagrid('getColumnOption', param);
e.editor = {}; 
} 
}
});

调用:

移除:

$("#dg").datagrid('removeEditor','cardNo');//这里的cardNo是需要移除editor的列的field值

添加:

$("#dg").datagrid('addEditor',[ //添加cardNo列editor
{field:'cardNo',editor:{
type:'textbox',
options:{
required:true,
validType:'length[3,3]', 
invalidMessage:'请输入3位号码!'
}
}
}]

别的操作都可以据此拓展.

Javascript 相关文章推荐
类之Prototype.js学习
Jun 13 Javascript
使一个函数作为另外一个函数的参数来运行的javascript代码
Aug 13 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
Dec 16 Javascript
jQuery向后台传入json格式数据的方法
Feb 13 Javascript
js实现的页面矩阵图形变换特效
Jan 26 Javascript
JavaScript学习笔记整理_用于模式匹配的String方法
Sep 19 Javascript
JavaScript严格模式详解
Jan 16 Javascript
js实现简易垂直滚动条
Feb 22 Javascript
jQuery表单设置值的方法
Jun 30 jQuery
Vue学习笔记进阶篇之vue-cli安装及介绍
Jul 18 Javascript
基于JQuery的Ajax方法使用详解
Aug 16 jQuery
Nuxt.js实战详解
Jan 18 Javascript
js实现简单排列组合的方法
Jan 27 #Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
Jan 27 #Javascript
JavaScript+html5 canvas制作的圆中圆效果实例
Jan 27 #Javascript
jQuery ajax分页插件实例代码
Jan 27 #Javascript
JavaScript+html5 canvas绘制的小人效果
Jan 27 #Javascript
jquery ajax分页插件的简单实现
Jan 27 #Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
Jan 27 #Javascript
You might like
php中取得URL的根域名的代码
2011/03/23 PHP
检测codeigniter脚本消耗内存情况的方法
2015/03/21 PHP
优化WordPress的Google字体以加速国内服务器上的运行
2015/11/24 PHP
php使用SAE原生Mail类实现各种类型邮件发送的方法
2016/10/10 PHP
PHP实现的MD5结合RSA签名算法实例
2017/10/07 PHP
php实现微信公众平台发红包功能
2018/06/14 PHP
可以支持多中格式的JS键盘
2007/05/02 Javascript
Jquery公告滚动+AJAX后台得到数据
2011/04/14 Javascript
能说明你的Javascript技术很烂的五个原因分析
2011/10/28 Javascript
JQuery 获取json数据$.getJSON方法的实例代码
2013/08/02 Javascript
Function.prototype.bind用法示例
2013/09/16 Javascript
深入解析JavaScript中的变量作用域
2013/12/06 Javascript
jQuery实现tag便签去重效果的方法
2015/01/20 Javascript
详解Webwork中Action 调用的方法
2016/02/02 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
IE和Firefox之间在JavaScript语法上的差异
2016/04/22 Javascript
RequireJS多页面应用实例分析
2016/06/29 Javascript
关于JavaScript数组你所不知道的3件事
2016/08/24 Javascript
easy ui datagrid 从编辑框中获取值的方法
2017/02/22 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
vue实现登录后页面跳转到之前页面
2018/01/07 Javascript
vue实现文件上传功能
2018/08/13 Javascript
es6中class类静态方法,静态属性,实例属性,实例方法的理解与应用分析
2020/02/15 Javascript
[01:18]DOTA2超级联赛专访hanci ForLove淘汰感言曝光
2013/06/04 DOTA
Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法
2015/04/24 Python
Python中使用插入排序算法的简单分析与代码示例
2016/05/04 Python
python正则分析nginx的访问日志
2017/01/17 Python
基于python实现聊天室程序
2018/07/27 Python
python实时获取外部程序输出结果的方法
2019/01/12 Python
分解成质因数(如435234=251*17*17*3*2,据说是华为笔试题)
2014/07/16 面试题
入党积极分子自我鉴定
2014/02/18 职场文书
党员查摆剖析材料
2014/10/10 职场文书
学生退学证明
2015/06/23 职场文书
入党宣誓仪式主持词
2015/06/29 职场文书
宣传部部长竞选稿
2015/11/21 职场文书
2016年校园社会综合治理宣传月活动总结
2016/03/16 职场文书