Easyui edatagrid添加beforeEdit事件

最近使用edatagrid,但是edatagrid不支持beforeEdit事件.自己添加一个,代码如下

在原edatagrid.js中的$.fn.edatagrid.methods对象中,插入一个自定义的"onBeforeEdit"

onBeforeEdit : function(jq,index){
			var dg = $(jq[0]);
			var opts = $.data(jq[0], 'edatagrid').options;
			var rows = dg.datagrid('getRows');
			if(opts.beforeEdit){//如果指定了onBeforeEdit事件就执行
				var rt = opts.beforeEdit.call(jq[0], index, rows[index]);
				if(rt!==undefined){//如果事件有返回值
					return rt;
				}else{
					return true;
				}
			}else{
				return true;
			}
		}

修改editRow事件,在流程中插入onBeforeEdit,把原editRow代码中这一部分

dg.datagrid('endEdit', editIndex);
dg.datagrid('beginEdit', index);
opts.editIndex = index;
var rows = dg.datagrid('getRows');
opts.onEdit.call(this, index, rows[index]);

修改为

var beforeEdit = dg.edatagrid('onBeforeEdit',this,index);//执行onBeforeEdit事件
//如果返回结果为true就继续原来的流程,否则就跳过				
if(beforeEdit){
dg.datagrid('endEdit', editIndex);
dg.datagrid('beginEdit', index);
opts.editIndex = index;
var rows = dg.datagrid('getRows');
opts.onEdit.call(this, index, rows[index]);
}

修改后的js文件


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值