easyUI datagrid 数据加载时判断是否默认勾选checkbox

       今天大DC工会(页游工人物语)的土豪会长在使用easyUI的datagrid的时候遇到一个问题,需求如下:

         需要datagrid在加载数据的同时通过判断数据将满足条件的数据行的checkbox勾选上。

在数据量小的情况下可以通过在onloadsuccess中进行处理,在数据量较大的情况下这种方式就行不通了。和土豪一起试了各种方式还是没有找到datagrid自带的处理这类问题的方法(cobobox就有在加载的数据中包含selected属性就可以实现默认选中)。

既然没有现成的方法解决这个问题那就只有自己动手了,既然easyui是开源的那就自己来修改easyUI的源代码实现(变态)需求,要不然开源有啥意义呢偷笑

代码修改如下:

easyUI 1.3.3        jquery.easyui.min.js 的8696行:

if(col.checkbox){
	cc.push("<input type=\"checkbox\" name=\""+_643+"\" value=\""+(_644!=undefined?_644:"")+"\"/>");
}

修改为

if(col.checkbox){
	if(col.checker&&col.checker(_641))
	{
		cc.push("<input type=\"checkbox\" name=\""+_643+"\" value=\""+(_644!=undefined?_644:"")+"\" checked=\"checked\" />");
	}
	else
		cc.push("<input type=\"checkbox\" name=\""+_643+"\" value=\""+(_644!=undefined?_644:"")+"\"/>");
}

然后在自己的datagrid定义中像使用fomatter一样在定义checkbox的列中加入

checker:function(row)
{
       return true;
}

这样基本就能实现这一(变态)需求了。

声明:该方法未经过充分的测试,如有bug概不负责,请慎用。

无利不起早,作为回报,强烈要求大土豪降低DC工会内部交易价格!大笑


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值