Javascript 剑道UI网格扩展过滤器参数
要为我的列设置默认筛选运算符,我一直在使用:Javascript 剑道UI网格扩展过滤器参数,javascript,jquery,kendo-ui,kendo-grid,Javascript,Jquery,Kendo Ui,Kendo Grid,要为我的列设置默认筛选运算符,我一直在使用: filterMenuInit: function(e) { if (e.field == "name") { var firstValueDropDown = e.container.find("select:eq(0)").data("kendoDropDownList"); firstValueDropDown.value("contains");
filterMenuInit: function(e) {
if (e.field == "name") {
var firstValueDropDown = e.container.find("select:eq(0)").data("kendoDropDownList");
firstValueDropDown.value("contains");
firstValueDropDown.trigger("change");
var logicDropDown = e.container.find("select:eq(1)").data("kendoDropDownList");
logicDropDown.value("or");
logicDropDown.trigger("change");
var secondValueDropDown = e.container.find("select:eq(2)").data("kendoDropDownList");
secondValueDropDown.value("contains");
secondValueDropDown.trigger("change");
}
...
}
但我希望能够做到这一点:
filterable: {
extra: true,
defaultStringOperator: 'contains',
defaultNumberOperator: 'gte'
}
如何扩展或更改Kendo UI grid来实现这一点?我处理这一问题的方法是在网格上显式地设置可过滤对象,并使用每种类型及其各自的运算符,因为它们将按顺序添加。 当列数据类型为字符串时,请求包含默认值
filterable: {
operators: {
string: { contains: 'Contains', doesnotcontain: 'Does not contain', eq: 'Is equal to', neq: 'In not equal to', startswith: 'Starts with', endswith: 'Ends with' },
number: { gte: 'Greater Than or Equals and stuff', eq: 'Equal To', neq: 'Not Equal To', gt: 'Greater Than' }
}
}
样本
我还为它添加了数字和一些运算符,如果需要,您可以继续使用datetime和boolean。
可过滤操作人员的文件