Я не понимаю, что вы имеете в виду под "Если имена столбцов sidx, sord, filters, jqGrid, получение данных не работает". Тем не менее, если вам нужно, вы можете переименовать или удалить параметры jqGrid двумя способами: prmNames
и serializeGridData
.
Вам следует внимательно изучить список значений по умолчанию prmNames . Нет возможности переименовать filters
в пути, но чтобы переименовать имя других параметров, вы должны использовать
$.extend(jQuery.jgrid.defaults, {
prmNames: {
id: "_rowid", page: "_page", rows: "_rows",
oper: "_oper", sort: "_sidx", order: "_sord"
}
});
(sort
и order
вместо sidx
и sord
). Чтобы переименовать filters
в _filters
и удалить отправку пустых searchField
, searchString
и searchOper
, вы можете сделать почти то же, что я описал здесь :
serializeGridData: function (postData) {
var myPostData = $.extend({}, postData); // make a copy of the input parameter
myPostData._filters = myPostData.filters;
delete myPostData.filters;
delete myPostData.searchField;
delete myPostData.searchString;
delete myPostData.searchOper;
return myPostData;
}
Используя Fiddler или Firebug , вы можете убедиться, что в URL-адресе демоверсии используются следующие параметры
_search=true&nd=1313235583212&_rows=10&_page=1&_sidx=invdate&_sord=desc&_filters=...
как вы, как нужно.