【发布时间】:2016-09-09 06:49:24
【问题描述】:
我的数据源中有两个字段“数字”和“名称”,它们是一对一相关的。
目前,我使用数字字段对数据进行分组,组头显示“数字:xxx”。有没有办法在当前文本后面附加名称字段?作为'号码:xxx,名称:xxxx'?
我查看了剑道网格文档并搜索了很长时间,似乎剑道网格仅支持根据分组字段的值或聚合显示组头,找不到将这两个字段分组的解决方案。
然后我有另一个解决方案来处理它。添加一个合并两个字段的新字段,然后按此新字段分组,但新字段将显示在列标题中的列过滤器中。有没有办法解决这个问题?
$("#grid").kendoGrid({
columns: [{
field: "number",
hidden: true
},{
field: "name"
}, {
field: "order"
}],
dataSource: {
data: [{
number: 1,
name: "Jane Doe",
order: "order1"
},
{
number: 1,
name: "Jane Doe",
order: "order2"
},
{
number: 1,
name: "Jane Doe",
order: "order3"
},{
number: 2,
name: "Allen",
order: "order1"
},{
number: 2,
name: "Allen",
order: "order2"
}
],
group: {
field: "number"
}
}
});
下面的代码可以显示组合字段,但是有两个问题: 1. 标题文本始终包含'header:'前缀,如“header:number:1,name:Jane Doe”; 2.在列过滤器中,有一个标题列。
$("#grid").kendoGrid({
columns: [{
field: "number",
hidden: true
},{
field: "name",
hidden: true
}, {
field: "order"
},{
field: "header",
hidden: true
}
],
dataSource: {
data: [{
number: 1,
name: "Jane Doe",
order: "order1",
header: "number: 1, name: Jane Doe"
},
{
number: 1,
name: "Jane Doe",
order: "order2",
header: "number: 1, name: Jane Doe"
},
{
number: 1,
name: "Jane Doe",
order: "order3",
header: "number: 1, name: Jane Doe"
},{
number: 2,
name: "Allen",
order: "order1",
header: "number: 2, name: Allen"
},{
number: 2,
name: "Allen",
order: "order2",
header: "number: 2, name: Allen"
}
],
group: {
field: "header"
}
},
columnMenu: true
});
谢谢
【问题讨论】:
-
你能在 sn-p 中重现这个场景吗?这将帮助我们为您解决问题。仅靠描述我们无能为力。
-
@Cerbrus,感谢您的回复,请在帖子中查看我的代码。数据按数字分组,组内的所有名字都一样,所以想隐藏名字字段,让它显示在组头。如“号码:1,姓名:Jane Doe”。
标签: javascript kendo-ui kendo-grid