我正在使用带有filterToolbar和searchGrid的jqGrid。
当我使用filterToolbar执行搜索然后打开searchGrid窗口时,过滤器会被填满。
但是当我在此之后改变某些内容时,此功能就会停止工作。
我可以通过测试此示例来解释:http://srv04.wln.com.br/cpsadmin/sample
尝试在filterToolbar中为字段名称,地址和城市键入“a”,然后执行搜索(在任何输入中焦点时按返回)。
之后,单击footerBar的“Find Records”按钮,这将打开搜索窗口,根据filterToolbar搜索选项填充3个字段。
但是如果我们在此之后尝试做某事,那么没有什么可以再做了,因为我们刷新页面。
我希望获得两者的强大功能,filterToolbar和searchGrid,以及两种方式协同工作。
答案 0 :(得分:1)
您可以尝试添加recreateFilter: true
搜索选项。为了能够找到问题的确切原因,您应该在演示页上使用jquery.jqGrid.src.js
而不是jquery.jqGrid.min.js
。
我建议您另外使用我在the answer中建议的refreshSerchingToolbar
功能。另外一个answer the demo对您来说也很有趣。它显示了如何在localStorage
中保存最后一次搜索过滤器(以及其他一些信息)。在访问同一页面时,将应用先前使用的搜索过滤器。
更新:这有点尝试了,但我个人使用的设置
$.extend($.jgrid.search, {
multipleSearch: true,
multipleGroup: true,
recreateFilter: true,
closeOnEscape: true,
closeAfterSearch: true,
overlay: 0
});
或某些更高级的版本作为我的默认高级搜索设置。用于表单编辑的recreateFilter: true
recreateForm: true 总是我的默认设置。我建议多次(例如,参见here)将设置设为jqGrid默认值,但建议仍未得到答复。 Tony(jqGrid的开发者)对此问题有另一种看法。