Я нахожусь в ситуации, когда мне нужно сохранить состояние в сетке после изменения размера, изменения порядка, скрытия столбцов.
Все работает хорошо, за исключением того, что фильтры столбцов (раскрывающиеся списки, текстовое поле), указатель даты) не восстанавливается в правильном столбце после перемещения столбца с фильтром (collumnchooser).
Используя следующий JavaScript, я могу восстановить большинство того, что мне нужно (размер, порядок и видимостьстолбцы), но восстановление фильтров в правильных столбцах не работает.(Фильтры появляются через несколько столбцов после того места, где они должны быть.
var listName = jQuery('#list').jqGrid('getGridParam', 'customName');
var colModel = LoadColumnModel(listName);
var perm = jQuery.cookies.get(listName + '_list_perm');
var rowNumber = jQuery.cookies.get(listName + '_list_rowNumber');
if (colModel) {
var grid = jQuery('#list');
for (var i = 0; i < colModel.length; i++) {
var column = colModel[i];
if (column.hidden) {
grid.jqGrid('hideCol', column.name);
};
***//I hoped next line would do the trick, but it didn't :(***
if (column.search && column.searchoptions) {
grid.jqGrid('setColProp', column.name, { search: true, searchoptions: column.searchoptions });
};
}
grid.jqGrid('setGridParam', { colModel: colModel });
loadGrid = false;
if (rowNumber) {
grid.jqGrid('setGridParam', { rowNum: rowNumber });
jQuery('.ui-pg-selbox').val(rowNumber);
}
grid.trigger('reloadGrid');
if (perm) {
grid.jqGrid("remapColumns", perm, true);
}
}
У кого-нибудь есть подсказка?