UPDATE: найденное решение, проверьте комментарии, так как я все еще являюсь пользователем noobie, которому приходится ждать 8 часов.
У меня есть сетка strut2 jquery вместе с формой на моей целевой странице webapp. Сетка заполняется и становится видимой через вызов ajax при отправке формы. Сначала он работал неправильно, так как сетка сначала вызывала вызов ajax, когда пользователь нажимал на целевую страницу, делая ненужные запросы.
Я исправил это с помощью hiddengrid="true"
и теперь сетка не делает никаких начальных запросов, когда целевая страница впервые попадает, что хорошо. Но теперь мой вызов ajax вообще не работает, когда я отправляю форму. Он даже не достигает действия.
Установка этого атрибута в true имеет какое-то отношение к нему, но я не уверен, как исправить проблему.
TL; DR Struts2 jQuery сетка больше не ударяет 'url' после установки hiddengrid="true"
. Установка атрибута на false устраняет проблему, но затем сетка делает первоначальный ненужный запрос.
Любая помощь будет принята с благодарностью Спасибо!
Похоже, я искал неправильные ключевые слова. Выполнение поиска Google в "исходных данных сетки jquery" вместо "struts 2 jquery grid.." привело меня к быстрому и безболезненному исправлению. В любом случае, это быстрое исправление, если кто-то сталкивается с подобной проблемой:
Сначала установите атрибут сетки:
datatype: local
В вашем вызове ajax установите атрибут grid на "json" (если вы работаете с данными JSON)
$('#my-jqgrid-ID').jqGrid('setGridParam', { 'datatype': 'json' }).trigger('reloadGrid');
Код добавляет строки, в случае, если ur ищет только новые значения для каждой загрузки сетки, используйте это:
var allParameters = $("#gridId").jqGrid("getGridParam");
allParameters.data = myData;
$("#gridId").trigger('reloadGrid');