#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