JqGrid устанавливает последнюю страницу для локального типа данных - PullRequest
0 голосов
/ 20 февраля 2012

У меня есть Jqgrid, который имеет тип данных local.Я загружаю данные во время выполнения, используя addRowData, setCell.Все работает отлично.Обратите внимание, что я не загружаю все данные в сетку, поэтому сетка не знает, сколько там страниц.Мой сервер возвращает количество, которое мне нужно, чтобы установить его в сетке.Документы говорят, что последняя страница только для чтения?Как мне установить мою последнюю страницу (количество страниц) в сетке?Какие-либо предложения.Спасибо, Сарат

1 Ответ

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

Использование метода addRowData для заполнения jqGrid - это самый старый и самый неэффективный способ заполнения данных в jqGrid.Проблема проста.Если вы помещаете элемент на страницу, необходимо пересчитать положение всех других элементов на странице.Это делает много ресурсов веб-браузера.Заполнение всего тела jqGrid за один шаг намного эффективнее, особенно при большом количестве вставленных строк.Действительно, метод addRowData необходимо использовать только в редких случаях.

Гораздо эффективнее будет использовать параметр data jqGrid, который позволяет заполнять сетку данными, сортировать данные, соответствующие sortname и sortorder и отобразите первую страницу, где rowNum определяет количество строк на странице.Кроме того, следует не использовать afterInsertRow обратный вызов и использовать gridview: true.В случае, если заполнение jqGrid является наиболее эффективным.

Количество страниц сетки будет вычислено автоматически на основе количества строк в сетке.Только если вы используете на стороне сервера datatype ('json' или 'xml'), клиентская часть не знает общее количество страниц, поэтому необходимо заполнить входные данные total,page и records вместе с основными данными (см. документацию ).Если используется метод низкого уровня addJSONData, можно заполнить сетку данными и при этом установить total, page и records на любые значения, которые вы хотите.

Другой способ, который вы можете использовать внекоторые сценарии datatype: 'jsonstring'.Данные могут быть размещены как значение опции datastr.Кстати, значение datastr должно быть не только строкой JSON, но также может быть и объектом.

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