Filter KendoGrid-对对象的属性进行过滤
这是我的肯多格里德:Filter KendoGrid-对对象的属性进行过滤,filter,kendo-ui,kendo-grid,Filter,Kendo Ui,Kendo Grid,这是我的肯多格里德: $scope.gridEltCompoOptions = { dataSource: { transport: { ... }, schema: { model: {
$scope.gridEltCompoOptions = {
dataSource: {
transport: {
...
},
schema: {
model: {
id: 'IdElement',
fields: {
GroupeActes: { defaultValue: { IdGroupeActes: null, Libelle: ' ' } }
}
}
}
},
sortable: true,
resizable: true,
filterable: {
mode: 'row'
},
columns: [{
field: 'GroupeActes',
title: "Groupe d'actes",
template: function (dataItem) {
return kendo.toString(dataItem.GroupeActes.Libelle);
}
}, ]
我想在Libelle属性上过滤我的字段“GroupeActes”(GroupeActes是一个对象),但实际上过滤器会过滤整个对象
当我尝试过滤时,我有一个Js错误
未捕获类型错误:(d.GroupeActes | |“”)。toLowerCase不是函数
问题很明显,过滤器采用的是entiere对象,而不是Libelle属性。
在过去的4个小时里,我尝试了在谷歌上找到的所有解决方案,但没有任何效果
我的对象GroupeActes如下所示:
变量GroupeActes={
小组活动:{
诽谤:“
}
}
有两个groupeActes级别
我在2015年看到一个管理员的帖子,说这种过滤器是不可能的,
但我也看到了这种解决方案:
(如果示例中的(e.field==“Category”&&e.filter!==null){)
我试着做一些类似的事情:if field==“groupeActes”=>所以我想过滤Libelle属性,
但我没有成功
有人能帮我吗
非常感谢您看过这篇文章了吗: 我相信您可以通过将列字段设置为
“GroupeActes.Libelle”
而不是使用列模板来完成您想要的:
columns: [
{
field: 'GroupeActes.Libelle',
title: "Groupe d'actes",
},
],
查看此内容:谢谢您的回答,事实上我需要整个对象用于我的项目,我已经尝试了此解决方案,但是当我在之后调用我的服务器时,我丢失了我的对象的所有信息。实际上,我的字段必须是整个对象,并且我必须在我的网格中仅显示属性“Libelle”(带模板),问题是我想对Libelle to=>属性进行筛选,但正如您所知,筛选器会获取“field:@blackstar012”中给定的对象-您是否可以添加一个字符串列,仅用于显示和筛选Libelle,然后隐藏object列?