1、在开发测试过程中发现,页面显示6个及以上的checkbox的时候,全选查询后,点击清空后,再次查询后台竟然接收到了两个被选中的值,但是页面没有选中啊?(甚是费解啊...........)
2、调试并没有发现大的问题:页面的sumbmit提交按钮事jeesite框架调用了jqGrid的刷新而已;
3、解决办法:
既然jeesite采用的是reloadGrid方法,则可以手动调用这个方法;同时手动设置参数(经过测试只要调用设置参数方法就行,不需要具体的参数内容);
a、首先修改提交按钮类型为button:
b、给queryBtn添加点击事件;获取页面的checkbox选中的值,然后添加到请求参数里;然后触发reloadGrid方法;(测试发现不获取checkBox值也可以,也就是只要触发了setGridParam方法就行)
点击事件代码:
$("#queryBtn").click(function () {
_checkBox=$("input:checkbox[name=testCheckbox]:checked");
ids='';
$.each(_checkBox,function(e){
ids=ids+$(this).val()+",";
});
//js.log(ids);
$("#dataGrid").jqGrid('setGridParam', {
postData: {testCheckbox:ids}
}).trigger("reloadGrid");
});
本次使用jeesite版本:V4.1.7
jqGrid版本:v4.7.1