Я бы достиг этого, изменив ваш метод загрузки сетки.Вместо того чтобы использовать простые средства извлечения данных (путем прямого доступа к ним в сетке через параметр url: myXMLData.php), я бы вместо этого вручную заполнил сетку вызовом addXmlData
.
По сути, процесс будет состоять в том, чтобы инициализировать вашу сетку пустыми значениями, а затем запустить запрос к серверу, чтобы начать построение вашего ответа.Этот запрос будет немедленно возвращен, передав ссылку на местоположение XML, которое будет создаваться с течением времени.Кроме того, этот первоначальный запрос будет преобразовывать фоновую задачу на сервере, которая фактически выполняет обработку и построение XML во временном местоположении кэша (создавая его в том же месте, которое было возвращено в качестве ссылки).На стороне браузера эта ссылка сохраняется и периодически опрашивается для проверки новых XML-данных (с использованием методов jQuery Ajax).Получив ответ от каждого из этих опросов, используйте метод addXmlData (), который я связал выше, чтобы загрузить jqGrid с текущим набором данных.Опрос может прекратиться, когда ответ от сервера содержит все ожидаемые вами строки.Вам также потребуется периодически запускать на сервере задачу для очистки кэша XML.