jqGrid можно ли удалить подкачку при поиске?

#jquery #css #jqgrid

#jquery #css #jqgrid

Вопрос:

Есть ли простой способ отключить подкачку при поиске в jqGrid? Когда пользователь выполняет поиск, я хочу отобразить все результаты поиска на одной странице.

В принципе, я хочу rowNum: 10000 , чтобы пейджер был отключен, но только когда пользователь выполняет поиск.

Редактировать: получил это для работы с чем-то вроде:

   beforeRequest: function () {
                            if (jQuery("#ClientPickerGrid").getGridParam('search') == true) {                                 
                                jQuery("#ClientPickerGrid").setGridParam({ rowNum: 10000 })
                            }
  

Комментарии:

1. если возможно поместить ваш фрагмент целевого кода в jsfiddle, вы сможете получить ответ как можно скорее

Ответ №1:

Использование rowNum: -1 jqGrid не поддерживается, особенно если вы используете локальный тип данных или loadonce: true параметр. Вы должны использовать и достаточно большое значение, например rowNum: 1000 , или rowNum: 10000 .

ОБНОВЛЕНО: Решение может зависеть от datatype того, что вы используете, и от значения loadonce параметра. Кроме того, вы можете использовать некоторые события, существующие при поиске. Поэтому, если вы пишете о поиске, вы всегда должны писать, какой из поиска вы используете.

Если никакая другая информация не известна, вы можете использовать beforeRequest событие, чтобы проверить, установлен ли search параметр jqGrid в значение true . В этом случае вы можете временно изменить значение rowNum и восстановить его исходное значение loadComplete . Если вы отправляете запрос на сервер (если вы используете datatype: 'json' или datatype: 'xml' ), может быть важно изменить rows значение, отправляемое на сервер. Вы можете сделать это внутри serializeGridData обработчика событий. Внутренняя часть serializeGridData search будет отображаться в опубликованных данных как _search .

Комментарии:

1. спасибо, это сработало, просто установив rowNum в beforeRequest