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 相关文章推荐
IE6下出现JavaScript未结束的字符串常量错误的解决方法
Nov 21 Javascript
JavaScript的漂亮的代码片段
Jun 05 Javascript
jQuery中animate()方法用法实例
Dec 24 Javascript
JavaScript的模块化开发框架Sea.js上手指南
May 12 Javascript
Node.js 异步异常的处理与domain模块解析
May 10 Javascript
浅谈 Vue v-model指令的实现原理
Jun 08 Javascript
移动端效果之IndexList详解
Oct 20 Javascript
vue异步加载高德地图的实现
Jun 19 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
Sep 15 Javascript
js限制input只能输入有效的数字(第一个不能是小数点)
Sep 28 Javascript
js实现删除json中指定的元素
Sep 22 Javascript
js实现复制粘贴的两种方法
Dec 04 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
晶体管来复再生式二管收音机
2021/03/02 无线电
PHP 程序员的调试技术小结
2009/11/15 PHP
PHP网站安装程序制作的原理、步骤、注意事项和示例代码
2010/08/01 PHP
php各种编码集详解和以及在什么情况下进行使用
2011/09/11 PHP
PHP动态页生成静态页的3种常用方法
2014/11/13 PHP
PHP 无限级分类
2017/05/04 PHP
如何快速的呈现我们的网页的技巧整理
2007/07/01 Javascript
JavaScript 密码强度判断代码
2009/09/05 Javascript
javascript下string.format函数补充
2010/08/24 Javascript
什么是DOM(Document Object Model)文档对象模型
2012/03/05 Javascript
重写javascript中window.confirm的行为
2012/10/21 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
JavaScript对象参数的引用传递
2016/01/14 Javascript
AngularJS 输入验证详解及实例代码
2016/07/28 Javascript
JS数组去重(4种方法)
2017/03/27 Javascript
详解AngularJS1.6版本中ui-router路由中/#!/的解决方法
2017/05/22 Javascript
关于Stream和Buffer的相互转换详解
2017/07/26 Javascript
vue如何获取点击事件源的方法
2017/08/10 Javascript
Vue Transition实现类原生组件跳转过渡动画的示例
2017/08/19 Javascript
详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)
2018/11/12 Javascript
简述ES6新增关键字let与var的区别
2019/08/23 Javascript
JavaScript实现世界各地时间显示
2020/09/07 Javascript
[02:24]DOTA2痛苦女王 英雄基础教程
2013/11/26 DOTA
python 消除 futureWarning问题的解决
2019/12/25 Python
将tensorflow模型打包成PB文件及PB文件读取方式
2020/01/23 Python
python3.8.1+selenium实现登录滑块验证功能
2020/05/22 Python
Pycharm自动添加文件头注释和函数注释参数的方法
2020/10/23 Python
python文件路径操作方法总结
2020/12/21 Python
实现strstr功能,即在父串中寻找子串首次出现的位置
2016/08/05 面试题
美术专业学生个人自我评价
2013/09/19 职场文书
授权委托书范文
2014/07/31 职场文书
幽默自我介绍演讲稿
2014/08/21 职场文书
房租涨价通知
2015/04/23 职场文书
php 防护xss,PHP的防御XSS注入的终极解决方案
2021/04/01 PHP
canvas实现贪食蛇的实践
2022/02/15 Javascript
浅谈Redis 中的过期删除策略和内存淘汰机制
2022/04/03 Redis