Запрос страницы 0 в jqGrid - PullRequest
2 голосов
/ 05 июля 2011

Можно ли начать со страницы = 0 в jqGrid?

Я работаю с данными, которые находятся вне моего контроля, и когда я запрашиваю страницу 1, я фактически получаю страницу 2 с сервера, поэтомуЯ ищу способ на самом деле запросить страницу 0.

Насколько я вижу, установка параметра страницы в jqGrid опции на ноль не имеет никакого эффекта.При проверке запроса параметр страницы по-прежнему равен 1.

Я также пытался изменить параметр страницы позже после инициализации.Это устанавливает страницу в 1:

grid.setGridParam({page:0}).trigger('reloadGrid');

С другой стороны, это успешно устанавливает страницу в запросе на 5:

grid.setGridParam({page:5}).trigger('reloadGrid');

Я предполагаю, что есть некоторая проверка на запрос страницы 0, ноесть идеи как обойти это?

Ответы [ 2 ]

4 голосов
/ 05 июля 2011

Если я правильно понимаю вашу проблему, вы можете решить ее, используя serializeGridData обработчик событий и свойство page в jsonReader, определенном как функция .

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

serializeGridData: function(postData) {
    if (typeof(ts.p.postData.page) === "number") {
        postData.page--; // decrease the value of page before sending to the server
    }
    return postData;
},
jsonReader: {
    page: function (obj) {
        return obj.page + 1; // increase the value of page returned from the server
    }
}
1 голос
/ 05 июля 2011

Это должно быть примерно так:

grid.trigger("reloadGrid",[{page:1}]);

См. Ответ Олега на похожий вопрос .

ОБНОВЛЕНИЕ :

jqGrid-пейджер начинается с 1, а метод reloadGrid проверяет , если страница <0, так что, кажется, вы ничего не можете сделать. </p>

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