我有一个启用了网格级“可排序”选项的jqGrid。这让我可以拖动列来重新排序它们,这很棒。但我希望阻止用户使用一个特定列进行此操作,而不会影响其他列。这可能吗?
答案 0 :(得分:0)
我觉得你的问题非常有趣,所以我做了the corresponding demo来证明这个解决方案。在演示中,第一列“日期”不合格。
我建议您阅读近距离主题的其他两个旧答案:this和this。我的建议是基于同样的想法。
如果使用jqGrid的sortable: true
选项,则会在内部使用内部jqGrid方法sortableColumns。 sortableColumns
方法使用jQuery Sortable进行实现,并将具有items
的网格的id="list"
选项初始化为值“> th:not(:has(#jqgh_list_cb,#jqgh_list_rn,#) jqgh_list_subgrid),:隐藏)”。它使列"cb"
,"rn"
和"subgrid"
无法排序。如果您使用jqGrid选项multiselect: true
,rownumbers: true
或subGrid: true
,则列可以插入网格中。以同样的方式,您拥有name: "invdate"
列,然后列元素的相应ID将为jqgh_list_invdate
。因此,可以使用选项sortable
作为以下
sortable: {
options: {
items: ">th:not(:has(#jqgh_list_cb,#jqgh_list_invdate,#jqgh_list_rn,#jqgh_list_subgrid),:hidden)"
}
}
使"invdate"
列无法使用。