jqGrid триггер ("reloadGrid") вызывает IE, чтобы показать остановить выполнение скрипта диалогового окна


Я использую 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 2

2 ответа:

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

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

(см. jqGrid documentation ), а не

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

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

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