Триггер jqgrid ("reloadGrid") заставляет IE показывать диалог "Остановить выполнение скрипта" - PullRequest
2 голосов
/ 02 марта 2011

Я давно использую jqgrid с моим приложением asp.net MVC

Сегодня, внезапно, IE показывает диалоговое окно Stop Running Script, говорящее

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

Я сузил его до кода, в котором я пытаюсь перезагрузить грид после некоторых запусков ajax.

Если я достану следующее

$("#shippingscheduletable").jqGrid().trigger("reloadGrid");

диалог не отображается, когда я возвращаю его обратно, он снова там. В течение нескольких месяцев в этом приложении ничего не менялось, и оно работало просто отлично.

Я прошел через действие контроллера, с которым связан jqgrid, и он работает просто отлично, он не застревает ни в каких циклах или в чем-либо.

он не показывает никаких ошибок в любом другом браузере. Есть мысли о том, как ее решить?

Ответы [ 2 ]

3 голосов
/ 02 марта 2011

Правильное использование reloadGrid равно

$("#shippingscheduletable").trigger("reloadGrid");

(см. документация jqGrid ), а не

$("#shippingscheduletable").jqGrid().trigger("reloadGrid");

Более сложные и менее документированные параметры reloadGrid вы найдете в ответе .

1 голос
/ 02 марта 2011

Вы случайно используете фиксированную / специфическую версию jQuery или «последнюю», когда это меняется? Изменения приводят к замедлению работы некоторых элементов IE.

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