Мое приложение снова и снова заполняет jqGrid результатами множества различных запросов, которые пользователь может сделать; запросы принимают форму: дайте мне заголовок, documentCategory, хиты, documentType для всех документов, где документ содержит слово «x». Пользователь может сделать много таких (ajax) запросов, один за другим: Запрос на выдачу. Прочитайте список названий, возвращаемых базой данных. Поработай немного. Сделайте еще один такой запрос. И так далее и тому подобное.
Я создаю сетку один раз, и когда вызов базы данных ajax возвращается с некоторыми данными, сетка сначала депопулируется, а затем снова заполняется, например:
$("#titles-table").jqGrid('clearGridData');
.
.
. // loop through the data returned by the ajax database call
for (var i = 0 ...
{
row = ...
$("#titles-table").jqGrid('addRowData',i, row);
}
Но теперь с версией 3.7 сетка имеет новое свойство data, которое предположительно быстрее, чем addRowData . Примеры, демонстрирующие это новое свойство data , показывают, что сетка заполняется по мере ее создания (как определено colModel и т. Д. И т. Д.). Но если предположить, что сетка уже существует и будет удалена с помощью вызова clearGridData , то есть ли способ установить свойство сетки data для повторного заполнения сетки? Нечто аналогичное clearGridData, например:
$(#titles-table).jqGrid('setGridData', data);
Меня интересует более быстрый способ заполнения сетки. Firefox отображает сообщение «скрипт занимает слишком много времени», когда моя сетка имеет 75 строк, но Chrome, Opera и Safari мгновенно вспыхивают при таком количестве данных.