gpt4 book ai didi

jquery - jqGrid 明确搜索条件

转载 作者:行者123 更新时间:2023-11-30 23:49:11 24 4
gpt4 key购买 nike

目前我已经设置了一个启用搜索的网格。当我运行搜索时,一切正常,我可以将良好的数据返回到网格。我看到 URL 上的“_search”参数设置为“true”,一切正常。

但是,当搜索完成并且数据不再相关时,我想重新加载网格以显示以前存在的数据(初始页面加载上显示的数据)。我创建了一个函数来调用“trigger(”reloadGrid”)”方法,但这只是发送相同的数据,而“_search”仍设置为“true”。

有没有办法清除搜索请求数据并重新加载页面加载上显示的初始数据,或者至少将“_search”值设置回“false”,以便我可以检查它?目前显示原始数据的唯一方法是重新加载页面。

最佳答案

如果您使用 jqGrid 搜索,将设置以下两件事

    jqGrid的
  1. search参数将设置为true
  2. jqGrid的
  3. postData参数将被修改。 postData 参数的值是一个具有一些属性的对象。如果是single searching将设置属性 searchFieldsearchStringsearchOper。如果是advanced searching仅会设置 postData 参数的属性 filters。 (属性 _search 也会被设置,但来自 jqGrid 的另一个组件,因此对于搜索的重置并不重要。)

因此,要重置搜索,您可以为“重置搜索”按钮定义以下事件处理程序:

$("#resetSearch").click(function() {
var grid = $("#list");
grid.jqGrid('setGridParam',{search:false});

var postData = grid.jqGrid('getGridParam','postData');
$.extend(postData,{filters:""});
// for singe search you should replace the line with
// $.extend(postData,{searchField:"",searchString:"",searchOper:""});

grid.trigger("reloadGrid",[{page:1}]);
});

您可以在 the following demo 中实时看到这一切。在演示中,您应该首先单击导航栏的“搜索”按钮并设置搜索过滤器。然后您可以单击“重置搜索”按钮并重置它。

关于jquery - jqGrid 明确搜索条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3989786/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com