我一直在玩jqGrid,但无法解决如何实现搜索功能。理想情况下,我想使用“高级搜索” - 我想当用户提交高级搜索表单时,输入的数据会被激活到“editurl”下指定的网址?我猜这个URL然后输出使用搜索条件过滤的结果集。
我的问题是这是如何实际完成的?我是否正确将URL数据发送给,如果是,那么如何访问这些数据?
我在jQuery方面还算不错,而且擅长Javascript-我使用PHP来处理所有服务器端的东西(专家知识和mySQL)但是我的生活似乎无法解决这个问题...目前我的Java是:
var lastsel;
$("#list").jqGrid({
url:'example.php',
datatype: 'xml',
hidegrid: false,
mtype: 'GET',
colNames:['id','ti', 'na','al','de'],
colModel :[
{name:'id', index:'id', width:55, hidden:true, key:true, resizable:true},
{name:'ti', index:'ti', width:75, resizable:true,editable:true},
{name:'na', index:'na', width:200, align:'left', resizable:true,editable:true},
{name:'al', index:'al', width:200, align:'left', resizable:true,editable:true},
{name:'de', index:'de', width:400, align:'left', sortable:false, resizable:true,editable:true}
],
pager: '#pager',
height:'100%',
rowNum:10,
searchGrid: {multipleSearch:true, caption : 'go'},
rowList:[50,100,200],
sortname: 'ticker',
sortorder: 'asc',
viewrecords: true,
editurl:'example.php',
multipleSearch:true,
caption: 'Definitions'
});
所有人都非常感谢!
答案 0 :(得分:1)
我不知道你是否在任何地方找到了你的答案,但我只是这样做了,我可以帮助你一点。
他们传递一个名为filters的参数。是json ...你必须将它作为请求接收并将其转换为数组。
我使用php,所以我使用了一个名为json_decode的函数($ yourvar,true)。它将过滤器转换为数组。该数组更易于操作。
答案 1 :(得分:0)
正如您所说,网址包含搜索信息。
但是搜索不是在客户端进行的,你必须在服务器端实现它。
您发布的代码不是Java,而是JavaScript。
答案 2 :(得分:0)
我只是想自己学习,但我建议您查看他们的PHP搜索演示: http://www.trirand.com/blog/jqgrid/jqgrid.html
在左侧,打开手风琴选项卡,然后转到实时数据操作,然后单击“搜索数据”。您将看到实例和代码。此特定示例使用XML而不是JSON。
在他们的例子中,我不明白他们如何将搜索变量传递给php代码:它只是发生了。如果是json,我知道它会在URL中。
在任何情况下,我都可以看到数据以与普通网格填充方法相同的方式返回到HTML页面:它使用XML格式返回到jqGrid,jqGrid知道如何以该格式获取数据与它一起运行。
希望有所帮助。