如何在每次打开搜索对话框时在jqgrid中设置搜索筛选器
我正在我的项目中使用jqgrid高级搜索。一切正常。现在我必须在单击搜索按钮时显示默认搜索条件。请告诉我如何才能做到这一点。我在beforeShowSearch中尝试了以下代码如何在每次打开搜索对话框时在jqgrid中设置搜索筛选器,jqgrid,Jqgrid,我正在我的项目中使用jqgrid高级搜索。一切正常。现在我必须在单击搜索按钮时显示默认搜索条件。请告诉我如何才能做到这一点。我在beforeShowSearch中尝试了以下代码 var postdata = { filters: '{"groupOp":"AND","rules":[' + '{"field":"invdate","op":"gt","data":"2
var postdata =
{
filters: '{"groupOp":"AND","rules":[' +
'{"field":"invdate","op":"gt","data":"2007-09-06"}]}'
};
grid.jqGrid('setGridParam', { search: true, postData: postdata });
它不起作用。如果您需要在每次打开高级搜索对话框时重置搜索过滤器,您不能在这种情况下使用
beforeShowSearch
回调,因为在调用beforeShowSearch
之前,搜索对话框将读取postData.filters
。您可以添加与原始搜索按钮完全相同的自定义搜索按钮,并使用的search:false
选项不使用标准按钮。在onClickButton
的内部,您可以在调用之前重置postData
的filters
属性
或者,您可以在loadComplete
回调中重置postData.filters
的值,并使用高级搜索的recreateFilter:true
选项在每次打开搜索对话框时强制创建新过滤器
演示最后一种方法。它首先定义变量
var defFilter='{“groupOp”:“AND”,“rules”:[{“field”:“invdate”,“op”:“gt”,“data”:“2007-09-06”}]}';
并使用loadComplete
重置过滤器
loadComplete:函数(){
$(this).jqGrid(“getGridParam”,“postData”).filters=defFilter;
}
如果需要在每次打开高级搜索对话框时重置搜索过滤器,则在这种情况下不能使用beforeShowSearch
回调,因为在调用beforeShowSearch
之前,搜索对话框将读取postData.filters
。您可以添加与原始搜索按钮完全相同的自定义搜索按钮,并使用的search:false
选项不使用标准按钮。在onClickButton
的内部,您可以在调用之前重置postData
的filters
属性
或者,您可以在loadComplete
回调中重置postData.filters
的值,并使用高级搜索的recreateFilter:true
选项在每次打开搜索对话框时强制创建新过滤器
演示最后一种方法。它首先定义变量
var defFilter='{“groupOp”:“AND”,“rules”:[{“field”:“invdate”,“op”:“gt”,“data”:“2007-09-06”}]}';
并使用loadComplete
重置过滤器
loadComplete:函数(){
$(this).jqGrid(“getGridParam”,“postData”).filters=defFilter;
}