2011-06-08 3 views
2

У меня довольно большая сетка деревьев клиентов (общий размер дерева 3000, но у одного узла 1500 детей). Это дерево модели смежности, и я загружаю только те данные, которые вам нужны (вызов Ajax, когда я расширяю каждый узел).Улучшение производительности сетки дерева JQGrid

Производительности велика по узлам, которые не имеют много детей, и даже при расширении большого узла, но всякий раз, когда я свернуть большой узел я получаю уведомление, говоря:

Stop running this script? 

A Script on this page is causing your web browser to run slowly. If it continues to run, your computer might become unresponsive. 

Его не извлекая данные, медленно, но это манипуляция с деревом на стороне клиента.

1) Существуют ли какие-либо настройки, которые я могу применить для повышения производительности? Я пробовал gridview = true, но я не думаю, что это влияет на сетки деревьев.

2) Имеет ли rowNum какое-либо влияние на сетки деревьев?

3) Я использую v3.7.2 - будет ли обновление до версии v4 иметь значение?

4) Если я не могу заставить это работать гладко, вы можете порекомендовать другую сетку дерева? Я использовал JQGrid с большим успехом на протяжении нашего приложения и будет грустно панда, если я должен найти другое решение :(

Ура!

ответ

3

Прежде всего вы должны обновить 3.7.2 до версии версия 4.0.0. В версии 4.0 для jqGrid сетка дерева была изменена для поддержки gridview:true, что очень важно в случае большого количества строк/узлов.

Если производительность после обновления не будет достаточной, вы должны опубликовать полное определение сетки и опубликовать URL-адрес, где могут быть загружены тестовые данные JSON/XML. Затем можно было бы отладить проблему, и probebly дает вам е рекомендации.

+0

Спасибо Oleg - сделал 2 вещи для повышения производительности: обновлен до версии 4 и использовал gridview: true, а исходные строки возвращались с помощью javascript в данных сетки (чтобы открыть всплывающее окно для выбранной строки), поэтому я переместил эти данные из сетка – woggles

+0

@woggles: Добро пожаловать! – Oleg

+0

Сегодня утром я снова пересматривал проблемы с производительностью. Узел, который дает мне проблемы, содержит около 700 записей (данные JSON для узла: http://pastebin.com/XrMxuiFR). Обратите внимание, что у нас есть идентификаторы GUID для идентификаторов. Производительность прекрасна в chrome, но я все еще получаю ошибку в IE (которую можно удалить, изменив параметр реестра http://support.microsoft.com/kb/175500). Есть ли способ отменить ненужный стиль, чтобы повысить производительность? Спасибо – woggles

1

Попробуйте использовать только те ссылки и таблицу стилей, которые применимы к этой сетке. Ненужные ссылки и таблица стилей влияют на производительность и могут быть причиной конфликтов. Это увеличит время загрузки файла, а также повлияет на пропускную способность.

Смежные вопросы