Мне нужно изменить поведение поиска по умолчанию на панели инструментов фильтра.Документация гласит:
Когда поиск выполнен, массив postData заполняется необходимыми данными для поиска.
Так что если у вас естьсетка с столбцом идентификатора и имени, и вы фильтруете их по столбцам, вы получаете строку запроса, которая выглядит примерно так:
?_search=true&nd=1323976178454&rows=20&page=1&sidx=&sord=asc&id=11&name=jr
То, что я хочу, выглядит примерно так
?_search=true&nd=1323976178454&rows=20&page=1&sidx=&sord=asc&search[id]=11&search[name]=jr
Как это можно сделать?
Редактировать:
Я понял, что если я определю свой colModel следующим образом:
{"name":"search[ID]","label":"id","jsonmap":"ID"}
Он делает то, что я хочу, ноэто кажется хакерским.Есть лучшие решения?
Вот js для моей сетки:
$("#contactsGrid").jqGrid({
"url":"\/contacts",
"datatype":"json", ,
"viewrecords":true,
"jsonReader":{
"root":"items",
"page":"page",
"total":"total",
"records":"records",
"repeatitems":false,
"id":0
},
"colModel":[
{"name":"ID","label":"id","jsonmap":"ID","searchoptions":[],
"formatter":"showlink","formatoptions":{"baseLinkUrl":"\/contacts"}},
{"name":"Name","label":"Name","jsonmap":"Name"}
],
"colNames":["id","name"],
"pager":"contactsGrid-pager"
}).navGrid("#contactsGrid-pager",
{"edit":false,"add":false,"del":false,"view":false});
$("#contactsGrid").filterToolbar({"autosearch":true});