Загрузить jqGrid с уже примененным фильтром - PullRequest
1 голос
/ 27 февраля 2012

У меня есть панель инструментов фильтра в моей сетке, где я устанавливаю некоторые значения по умолчанию, и после того, как фильтры установлены, я запускаю следующий код, чтобы обновить содержимое сетки.

var gridDOM = this; // save $("#list")[0] in a variable
if ($(this).jqGrid('getGridParam', 'datatype') === 'json') {
  // the first load from the server
  setTimeout(function () {
    gridDOM.triggerToolbar();
  });
}

Проблема в том, что сетка сначала загружается со всеми данными, без применения фильтров. Это производит маленькую "вспышку", когда фильтры применены с вышеупомянутым кодом.

Я хочу загрузить результат фильтрации напрямую, а не предварительно загружать весь контент, а затем представить отфильтрованный результат.

1 Ответ

2 голосов
/ 27 февраля 2012

Я думаю, что причина возникшей проблемы лежит вне кода, который вы опубликовали. Если вам нужно загрузить отфильтрованную сетку непосредственно в качестве инициализации, вам нужно просто установить свойство filters параметра postData и установить для параметра search параметра jqGrid значение true.

См. демо от ответ для получения дополнительной информации.

Если вы хотите дополнительно заполнить панель инструментов фильтра информацией из postData.filters, вы можете вызвать refreshSerchingToolbar функцию, которую я описал в ответ .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...