【发布时间】:2023-03-30 00:14:01
【问题描述】:
我有一个每 5 秒刷新一次 Kendo Grid 的 javascript 方法,我想防止此功能在过滤器对话框打开或过滤器处于活动状态时不起作用。可能吗?如果过滤器处于活动状态,是否可以使用任何事件?
//For refreshing grid periodically
$(document).ready(function () {
var refreshId = setInterval(function () {
var grid = $("#eventGrid").data("kendoGrid");
$("#eventGrid").data("kendoGrid").dataSource.read();
}, 5000);
});
【问题讨论】:
-
尝试使用 binidng setInterval 在网格
dataBound事件上刷新,然后在filterMenuInit事件上清除它,然后在关闭过滤器菜单时(我认为您必须再次为此创建自定义事件)在网格dataBound上绑定刷新并手动刷新。 docs for filterMenuInit -
非常感谢您的帮助。您可以发布一个示例作为答案吗?
-
也许稍后,我现在很忙。但是您可以使用
grid.bind('dataBound' , addRefreshToGrid)将事件处理程序动态绑定到网格,然后使用grid.unbind('dataBound' , addRefreshToGrid)将其删除,addRefreshToGrid是处理程序函数引用。对于所有其他事件,您以相同的方式附加处理程序。 gl -
@Drops 非常感谢,但我真的无法解决问题。如果您有时间,可以看看并发布一个示例吗?
标签: javascript jquery kendo-ui kendo-grid kendo-asp.net-mvc