#dojo #dojox.grid
#dojo #dojox.grid
Вопрос:
Я использую DOJO для представления таблицы данных
<div id="grid_log" dojoType="dojox.grid.DataGrid" store="log" structure="window.layout_log" queryOptions="{deep:true}" query="{}" clientSort="true" rowsPerPage="5"> </div>
но проблема в том, что grid_log не показывает только 5 строк на страницу. Что не так с этим тегом? Почему игнорируется rowsPerPage=»5″?
Ответ №1:
Похоже, что значение rowsPerPage относится не к страницам, которые «просматриваются», а скорее к «виртуальным» страницам. То есть сетка отображает только части самой себя за раз (для повышения производительности при работе с очень большими наборами данных), а значение rowsPerPage используется для определения того, сколько строк нужно отображать одновременно.
Если вы прокрутите до позиции в сетке, которая находится за пределами отображаемых страниц, она отобразит ее по требованию.
Если вы отображаете более 5 строк (из-за высоты, которую вы установили в своей сетке), То установка rowsPerPage равным 5 приведет к тому, что видимая часть будет отображаться партиями по 5 строк за раз. т.Е. к вашему хранилищу данных будет вызван запрос с start = 0 и count = 5, и другой запрос, отправленный с start = 5 и count = 5 и т.д. — До тех пор, пока не будут отображены все видимые строки.
Однако вы можете видеть на этой странице — это пример сетки с подкачкой. Может быть, это вам поможет.
Ответ №2:
Что касается нового dojo, то в dojo 1.7.2 здесь есть функция разбивки на страницы, где на страницах можно настроить расширенную сетку данных.Если это то, что вы хотите, вам придется импортировать плагин разбивки на страницы из new dojo и установить его в сетке.Вы можете задать страницы в сетке