Kendo ui 如何定义剑道网格可过滤运算符,但继续使用其默认字符串

Kendo ui 如何定义剑道网格可过滤运算符,但继续使用其默认字符串,kendo-ui,kendo-grid,Kendo Ui,Kendo Grid,我有以下情况,一个剑道网格,我想选择哪个过滤器操作符,这很好: var filters_op = { operators: { string: { eq: "Is equal to", neq: "Is not equal to", contains: "Contains" } } } element.kendoGrid({ dataSource: dataSource, filterable: filters_op, c

我有以下情况,一个剑道网格,我想选择哪个过滤器操作符,这很好:

var filters_op = {
  operators: {
    string: {
      eq: "Is equal to",
      neq: "Is not equal to",
      contains: "Contains"
    }
  }
}

element.kendoGrid({
  dataSource: dataSource,
  filterable: filters_op,
  columns: ...
  ...
});
但是,我的应用程序是多语言的,以前我有属性
filterable:true
(或false),供应商负责翻译,并提供自己的filterable操作符

另一方面,Kendo Global的默认运算符包含一些筛选器,如“开始于”、“在之后”、“在之后”或“等于”。。。我的应用程序还不支持,当我覆盖它们时,我失去了K.Global的翻译支持


可以同时使用“选择我想要的”和“从K.Glbl翻译”这两种运算符吗?

您无法选择在函数的
filterable
参数上翻译哪一个运算符。剑道还不允许这样

但是,您可以自己(或第三方库)翻译运算符,并在
过滤器上提供它们。这将覆盖剑道默认的
过滤器
,并对其进行翻译

我建议您使用的
I18n.t
translate方法来实现这一点。您的代码如下所示,例如:

var filtersOp={
操作员:{
字符串:{
eq:I18n.t('kendo.grid.filterable.operators.string.eq'),
neq:I18n.t('kendo.grid.filterable.operators.string.neq'),
contains:I18n.t('kendo.grid.filterable.operators.string.contains')
},
日期:{
等式:I18n.t('kendo.grid.filterable.operators.date.eq'),
neq:I18n.t('kendo.grid.filterable.operators.date.neq'))
},
枚举:{
eq:I18n.t('kendo.grid.filterable.operators.enums.eq'),
neq:I18n.t('kendo.grid.filterable.operators.enums.neq'))
}
}
}
...
肯多格元素({
...
可过滤的:过滤器顶部,
列:。。。
...
})

如您所见,
I18n
库将处理此转换过程。

您无法选择在函数的
filterable
参数上转换哪一个运算符。剑道还不允许这样

但是,您可以自己(或第三方库)翻译运算符,并在
过滤器上提供它们。这将覆盖剑道默认的
过滤器
,并对其进行翻译

我建议您使用的
I18n.t
translate方法来实现这一点。您的代码如下所示,例如:

var filtersOp={
操作员:{
字符串:{
eq:I18n.t('kendo.grid.filterable.operators.string.eq'),
neq:I18n.t('kendo.grid.filterable.operators.string.neq'),
contains:I18n.t('kendo.grid.filterable.operators.string.contains')
},
日期:{
等式:I18n.t('kendo.grid.filterable.operators.date.eq'),
neq:I18n.t('kendo.grid.filterable.operators.date.neq'))
},
枚举:{
eq:I18n.t('kendo.grid.filterable.operators.enums.eq'),
neq:I18n.t('kendo.grid.filterable.operators.enums.neq'))
}
}
}
...
肯多格元素({
...
可过滤的:过滤器顶部,
列:。。。
...
})
如您所见,
I18n
库将处理此翻译过程