Ответ 1
с помощью метода "GridUnload" выгружает сетку и оставляет исходную таблицу HTML. Следующий вызов для создания сетки начнется с нуля с любой данной схемой
У меня есть страница, которая отображает таблицу в двух разных режимах. В каждом режиме у меня есть другой набор столбцов. Я использую jqGrid для отображения таблицы. Когда я пытаюсь загрузить таблицу во второй раз (с одинаковыми или разными столбцами, если на то пошло), таблица не обновит данные.
Есть ли другой API для перезагрузки данных? Или я должен использовать некоторый метод, чтобы сначала очистить таблицу?
с помощью метода "GridUnload" выгружает сетку и оставляет исходную таблицу HTML. Следующий вызов для создания сетки начнется с нуля с любой данной схемой
Сегодня я столкнулся с этой проблемой. Я использую jqGrid для отображения результатов поиска из параметров, указанных в одном или нескольких полях формы. У меня есть событие click на кнопке поиска и событие keydown на самих полях для захвата возвращаемого ключа. Оба события вызывают функцию, которая сериализует форму и создает исходный jqGrid.
В исходной сетке у меня есть возможность вызвать функцию reloadEvents, когда gridCompletes:
gridComplete: reloadEvents
В функции reloadEvents у меня есть:
$("#frmSearch").bind("keydown", function(e) {
if (e.keyCode == 13) {
$('#searchList').setGridParam({url:'/model/actSearch.cfm?'+$('#frmSearch').serialize()});
$('#searchList').trigger("reloadGrid");
}
});
$('#btnSearch').click(function(){
$('#searchList').setGridParam({url:'/model/actSearch.cfm?'+$('#frmSearch').serialize()});
$('#searchList').trigger("reloadGrid");
});
Если вы загружаете свои данные в свою сетку другим способом, вы можете использовать setGridParam для изменения того, что вам нужно. Метод reloadGrid - это то, что должно обновлять ваши данные на основе параметров, которые вы меняете.