免费的 jqGrid - 未调用 filterToolbar 上的回调函数
Free jqGrid - callback functions on filterToolbar are not being called
示例位于 jFiddle(查找文本 "Example for Filter with callback function")
这种减速似乎对 beforeClear 和 beforeSearch 没有影响:
$(nameOfGrid).jqGrid('filterToolbar', {stringResult: true, searchOnEnter: true, searchOperators: true, defaultSearch : "cn",beforeClear: function() {alert(1)}, beforeSearch: function() {alert(1);}});
我放置 "alert(1)" 只是为了看看是否有东西弹出,但它似乎并没有在我过滤或清洁过滤器时被触发。
我从 4.9.0 开始就看到了这个,但也是最新的,如示例所示。
感谢您的帮助,
谢谢,
总计
问题原因:filterToolbar
more as once的用法:
$('#jqGrid').jqGrid('filterToolbar', {stringResult: true});
$('#jqGrid').jqGrid('navGrid',{...});
$('#jqGrid').jqGrid('filterToolbar', {stringResult: true, searchOnEnter: true, searchOperators: true, defaultSearch : "cn",beforeClear: function() {alert(1)}, beforeSearch: function() {alert(1);}});
如果只是评论 filterToolbar
的第一个调用,那么将获得工作演示:http://jsfiddle.net/OlegKi/13582dh7/4/
如果您确实需要重新创建过滤器,那么您应该先调用 destroyFilterToolbar
,然后再调用 filterToolbar
。
我还建议您清理代码,使其更短、更易读。例如,您可以删除不需要的 <div id="jqGridPager"></div>
,将 pager: "#jqGridPager"
替换为 pager: true
,并从 navGrid
和 navButtonAdd
的所有调用中删除 "#jqGridPager"
参数。
你应该考虑在jqGrid的searching
参数中移动navGrid
和filterToolbar
的搜索选项。
更重要的是从 colModel
中删除所有隐藏列,您不打算显示用户并改用 additionalPropertries
。强烈建议在 colModel
.
中使用列模板
在减少代码并使其更具可读性之后,将永远不会花时间在诸如使用不同参数调用 filterToolbar
两次这样的问题上。
示例位于 jFiddle(查找文本 "Example for Filter with callback function")
这种减速似乎对 beforeClear 和 beforeSearch 没有影响:
$(nameOfGrid).jqGrid('filterToolbar', {stringResult: true, searchOnEnter: true, searchOperators: true, defaultSearch : "cn",beforeClear: function() {alert(1)}, beforeSearch: function() {alert(1);}});
我放置 "alert(1)" 只是为了看看是否有东西弹出,但它似乎并没有在我过滤或清洁过滤器时被触发。
我从 4.9.0 开始就看到了这个,但也是最新的,如示例所示。
感谢您的帮助,
谢谢,
总计
问题原因:filterToolbar
more as once的用法:
$('#jqGrid').jqGrid('filterToolbar', {stringResult: true});
$('#jqGrid').jqGrid('navGrid',{...});
$('#jqGrid').jqGrid('filterToolbar', {stringResult: true, searchOnEnter: true, searchOperators: true, defaultSearch : "cn",beforeClear: function() {alert(1)}, beforeSearch: function() {alert(1);}});
如果只是评论 filterToolbar
的第一个调用,那么将获得工作演示:http://jsfiddle.net/OlegKi/13582dh7/4/
如果您确实需要重新创建过滤器,那么您应该先调用 destroyFilterToolbar
,然后再调用 filterToolbar
。
我还建议您清理代码,使其更短、更易读。例如,您可以删除不需要的 <div id="jqGridPager"></div>
,将 pager: "#jqGridPager"
替换为 pager: true
,并从 navGrid
和 navButtonAdd
的所有调用中删除 "#jqGridPager"
参数。
你应该考虑在jqGrid的searching
参数中移动navGrid
和filterToolbar
的搜索选项。
更重要的是从 colModel
中删除所有隐藏列,您不打算显示用户并改用 additionalPropertries
。强烈建议在 colModel
.
在减少代码并使其更具可读性之后,将永远不会花时间在诸如使用不同参数调用 filterToolbar
两次这样的问题上。