通过拖动列来显示此代码错误。
$(function () {
jQuery("#search_datagrid").jqGrid("GridUnload").jqGrid({
url: '/Search/SearchDataGrid/',
datatype: "json",
contentType: "application/json; charset-utf-8",
mtype: 'POST',
postData: {
search_word: search_word,
baseLang: baseLang,
targetLang: targetLang,
products: products
},
rowNum: 20,
rowList: [10, 20, 30, 50],
colNames: columnNames,
colModel: columnModels,
shrinkToFit: true,
height:'auto',
autowidth: true,
pager: "#search_pager",
viewrecords: true,
caption: "Result",
subGrid: true,
sortable: true,
loadonce: true,
gridview: true,
subGridOptions: {
"plusicon": "ui-icon-triangle-1-e",
"minusicon": "ui-icon-triangle-1-s",
"openicon": "ui-icon-arrowreturn-1-e"
},
})
.jqGrid('navGrid', '#search_pager', { add: false, edit: false, del: false, search: false, refresh: false })
.jqGrid('navButtonAdd', '#search_pager', {
caption: "Select Columns",
title: "Select Columns",
buttonicon: "ui-icon-calculator",
onClickButton: function () {
jQuery("#search_datagrid").jqGrid('columnChooser');
}
})
.jqGrid('setGroupHeaders', {
useColSpanStyle: true,
groupHeaders: [
{ startColumnName: '' + baseLang, numberOfColumns: 2, titleText: 'Language' },
]
})
});
$(window).resize(function () {
$("#search_datagrid").setGridWidth($(this).width() - $(this).width() / 10);
});
答案 0 :(得分:1)
您使用的网格选项sortable: true
负责对列标题的拖放进行列的求助(重新排序)。另一方面,sortable: false
的{{1}}属性可用于通过单击列标题来阻止对列中的数据进行排序。关于colModel
的列的重新排序与上述选项和属性无关,但可以使用columnChooser
中的hidedlg: true
属性来阻止在“列选择器”对话框中显示某些列。
因此,如果我正确理解了您的问题,您应该删除网格的colModel
,而不是在sortable: true
内指定任何sortable
属性(默认值为colModel
} property是sortable
,它允许对数据进行排序。)