JQGrid中的多重选择只允许多项选择或单项选择,并且换档功能不是我期望的换档选择.我也不喜欢我们需要多选的组合框.
我可以使用什么其他解决方案进行多选?
@H_301_4@解决方法
[2011年10月]更新为使用4.0 API,更正了移位选择错误,简化了选择循环.在4.2.0中测试过.
如果像我一样,你需要在jqgrid中使用正确的多选 – 其中ctrl一次选择一行,select选择多行并且既不清除选择又选择1行 – 你已经找到了它.
首先要做的事情:在网格定义中设置multiselect:true(我没有设置任何其他多选项)
Next:在gridComplete:function(){}中设置grid.jqGrid(‘hideCol’,’cb’); – 如果你不想要它们,这会隐藏复选框.
最后:主要部分
beforeSelectRow: function (rowid,e) { if (!e.ctrlKey && !e.shiftKey) { $("#grid").jqGrid('resetSelection'); } else if (e.shiftKey) { var initialRowSelect = $("#grid").jqGrid('getGridParam','selrow'); $("#grid").jqGrid('resetSelection'); var CurrentSelectIndex = $("#grid").jqGrid('getInd',rowid); var InitialSelectIndex = $("#grid").jqGrid('getInd',initialRowSelect); var startID = ""; var endID = ""; if (CurrentSelectIndex > InitialSelectIndex) { startID = initialRowSelect; endID = rowid; } else { startID = rowid; endID = initialRowSelect; } var shouldSelectRow = false; $.each($("#grid").getDataIDs(),function(_,id){ if ((shouldSelectRow = id == startID || shouldSelectRow)){ $("#grid").jqGrid('setSelection',id,false); } return id != endID; }); } return true; }
结束 – 希望有所帮助
@H_301_4@ @H_301_4@ 原文链接:https://www.f2er.com/jquery/181087.html