Вызвать страницу с jqGrid с включенным поиском?

Я пытаюсь вызвать одну страницу с jqGrid (windows.location.href='localhost/jqgrid?_search=true '), разрешив поиск, установив параметр _search true, но это не работает, поскольку jqGrid добавляет параметр поиска самостоятельно. http://catalog.localhost/de/jqgrid/index/c_edition?_search=true&rows=10&page=1&searchField=work_id&searchOper=eq&searchString=3&_search=false&nd=1296026941396&rows=20&page=1&sidx=&sord=asc Как решить эту проблему?

Спасибо


person Anatoliy    schedule 26.01.2011    source источник


Ответы (1)


Использование windows.location.href для установки URL с ?_search=true кажется мне неправильным. jqGrid может получать данные запроса AJAX с сервера. Таким образом, вы должны установить параметр url jqGrid на новой странице, а не указывать windows.location.href для URL-адреса.

Более того, использование параметра _search=true для начала поиска также неверно. См. Ссылки из этот ответ для получения дополнительной информации.

person Oleg    schedule 26.01.2011
comment
Вы имеете в виду, что установка параметров поиска возможна только с использованием grid.jqGrid ('setGridParam', {search: true, postData: newPostData}); а не передавая GET-параметры? Идея использования windows.location.href состоит в том, чтобы связать одну страницу с jqgrid с другой с jqgrid с полной загрузкой страницы с передачей некоторых параметров, а не с загрузкой DOM. - person Anatoliy; 26.01.2011
comment
@Anatoliy: Я имею в виду, что вы должны предоставить два разных URL-адреса сервера: один, которые производят чистые данные JSON или XML для заполнения сетки (этот URL-адрес должен поддерживать _search и другие параметры jqGrid) и другой, которые используют set per windows.location.href. Последний URL-адрес получает HTML / XHTML и JavaScript, которые определяют jqGrid. По правде говоря, я лично предпочитаю использовать сценарий Master / Detail, где установка windows.location.href не требуется, а вторая (подробная) сетка будет отображаться на той же странице под основной сеткой. - person Oleg; 26.01.2011
comment
Вы правы, у меня именно такой сценарий. Но: как вы могли видеть выше (в моем вопросе), jqGrid добавляет параметры _search самостоятельно, и мои настройки перезаписываются. Могу ли я отключить это автоматическое добавление? Объявление. windows.location.href vs Master / Detail - на данный момент я предпочитаю четкое различие, поскольку кажется, что пользователю проще собирать данные только из одной сетки. Кроме того, что с меньшими дисплеями с разрешением 1024x867? - person Anatoliy; 27.01.2011
comment
@Anatoliy: Моя основная проблема, чтобы понять вас, заключается в следующем: если вы устанавливаете windows.location.href на URL-адрес, это означает URL-адрес HTML-страницы. Параметр url ответа jqGrid с данными JSON или XML. Я не понимаю, почему вы используете ?_search=true для HTML-страницы? Поэтому я не понимаю, как вы организовываете свой серверный код. Тем не менее, если вы хотите, чтобы jqGrid не добавлял параметр _search к URL-адресу, вы можете использовать дополнительный параметр prmNames: { search: null } jqGrid. - person Oleg; 28.01.2011
comment
Да, с помощью href я установил URL-адрес на HTML-страницу. Представляете, у меня сетка работает и художники. Из каждой сетки я сделаю ссылку на работы данного художника или с работ на художника. Я не хочу использовать subgrid, так как у меня глубокие отношения, и это будет похоже на grid- ›subgrid-› subsubgrid и так далее. Я использую параметр? _Search, чтобы передать его контроллеру ajax, тем самым ограничивая вывод данных. Теперь концепция, представленная ниже, стала намного яснее? - person Anatoliy; 29.01.2011