Загрузите два jqgrids по порядку (последовательность вызовов ajax) - PullRequest
3 голосов
/ 28 апреля 2011

У меня есть две jqgrids на моей странице.при загрузке страницы я выскакиваю modeldialogwindow пользователю, который использует вызов ajax.я буду заполнять jqgrids, используя значение из всплывающего окна, выбранного пользователем.Могу ли я отложить загрузку Ajax jqgrid?(давая timeout?) моя проблема иногда в сетках ajax вызывает пожар перед всплывающим окном.так что с бэк-энда скинет ошибку.(поскольку значение, выбранное пользователем, не существует. Мне нужно последовательно выполнить следующие действия.

  1. показать всплывающее окно. дождаться ответа пользователя (это произойдет автоматически при использованииwindow.showModalDialog) получает значение, которое пользователь выбирает, и публикует его в бэкэндотправьте вызов ajax, чтобы загрузить вторую сетку.

, поскольку jqgrids заполняется сразу после '$(document).ready', я не смог его задержать.заранее.

Ответы [ 2 ]

8 голосов
/ 28 апреля 2011

Вы должны установить datatype параметр обеих сеток на 'local' при инициализации. Это предотвратит любые ajax звонки. После того, как пользователь выберет все параметры, необходимые для запроса ajax, вы должны установить для datatype значение 'json' (или 'xml' в зависимости от ваших требований) и вызвать reloadGrid:

$("#list").setGridParam({datatype:'json',page:1}).trigger('reloadGrid');
0 голосов
/ 28 апреля 2011

Вместо вызова функции jqgrid для $ (document). Уже переместите ее в событие, которое запускается после того, как пользователь делает выбор в модальном поле.

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