我使用的是Kendo UI v2014.2.716
我有一个网格,包括分页,排序,服务器端过滤,我为我的网格启用了过滤行。
当我测试这个过滤器时,我意识到:
当按键进入输入过滤器时,这会使页面回发。
但是当按键输入输入过滤器时,我希望过滤器闪光。
所以我在列上使用了模板:
{ field: "ShortTitle", title: "Title", filterable: { cell: { template: function (input) { input.width("60%"); input.keydown(preventPost); } }} },
编写一个函数来防止回发:
function preventPost(e) {
if (e.keyCode === 13) {
e.preventDefault();
}
}
但是当用户按ENTER键时,我不知道如何触发事件过滤器。
我尝试在preventPost函数中调用onblur,但它无效。
function preventPost(e) {
if (e.keyCode === 13) {
e.preventDefault();
this.onblur();
}
}
请告诉我这样做的方法。非常感谢。
答案 0 :(得分:1)
您可以在列字段中添加功能
filterable: {
cell: {
operator: "contains",
template: function (args) {
args.element.css("width", "90%").addClass("k-textbox").keydown(function (e) {
setTimeout(function () {
$(e.target).trigger("change");
});
});
},
showOperators: false
}
}
有关详细信息,请参阅此链接 https://docs.telerik.com/kendo-ui/controls/data-management/grid/how-to/filtering/grid-filter-as-you-type