Лучший способ загрузить jqGrid со статическими данными? - PullRequest
0 голосов
/ 30 ноября 2010

Мы загружаем 10 строк статических данных в нашу jqGrid, создавая строку JSON:

var d = "{\"page\":1,\"records\":10,\"total\":1,\"rows\":[" +
                "{\"id\":\"1\",\"cell\":[\"\"]}," +
                "{\"id\":\"2\",\"cell\":[\"\"]}," +
                "{\"id\":\"3\",\"cell\":[\"\"]}," +
                "{\"id\":\"4\",\"cell\":[\"\"]}," +
                "{\"id\":\"5\",\"cell\":[\"\"]}," +
                "{\"id\":\"6\",\"cell\":[\"\"]}," +
                "{\"id\":\"7\",\"cell\":[\"\"]}," +
                "{\"id\":\"8\",\"cell\":[\"\"]}," +
                "{\"id\":\"9\",\"cell\":[\"\"]}," +
                "{\"id\":\"10\",\"cell\":[\"\"]}" +
            "]}";

и загружая ее в сетку с datatype:jsonstring и datastr:d, где наша сетка имеет 15 столбцов и каждыйстолбец создается с использованием пользовательского форматера.

Есть ли лучший способ сделать это?

Ответы [ 2 ]

1 голос
/ 30 ноября 2010

Ответ: да

Как?Визуализируйте обычную таблицу, затем используйте плагин Jqgrid с именем grid.tbltogrid.js.Очень полезно и просто.Внутренне он использует метод «addRowData» jqgrid, но зачем вам нужно повторять написанный код, верно?;)

1 голос
/ 30 ноября 2010

Соответствует документации (см. Описание параметра data)

Он может заменить метод addRowData, который медленен для относительно больших данных

Я не сделал никаких мер, но использование параметра data кажется мне также одним из самых эффективных способов.Важно сколько строк данных вы хотите добавить.Параметр datastr, используемый вместе с datatype:jsonstring, является относительно старым способом, существовавшим до введения в версии 3.7 локальной подкачки данных.Что касается параметра data, вы можете добавить большой набор чистых данных, отсортировать их и отобразить первую страницу данных.Заполнение первой страницы данными из параметра data будет выполнено с учетом функции addJSONData, поэтому часть работы во всех случаях одинакова.Только заполнение данными, размер которых больше, так как размер страницы делает более эффективным использование параметра data.

Если вы будете использовать параметр data, не забывайте определять дополнительные id свойство в массиве данных.Это может быть свойство со значением по умолчанию id или другое имя, определенное в localReader.Если вы определили key:true для одного столбца jqGrid, то включение дополнительного свойства id не требуется.

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