我有点混淆了如何绑定我的剑道网格中的响应。将Json响应绑定到Kendo网格
获取响应形式的服务象下面
我需要显示在网格的响应如下所示
我使用角JS,MVC和剑术为网格。
这是最好的修改我在网格中的响应数据。在MVC或Angular js中。
感谢提前
我有点混淆了如何绑定我的剑道网格中的响应。将Json响应绑定到Kendo网格
获取响应形式的服务象下面
我需要显示在网格的响应如下所示
我使用角JS,MVC和剑术为网格。
这是最好的修改我在网格中的响应数据。在MVC或Angular js中。
感谢提前
我认为你不能在网格中原生。但是,您可以使用解决方法 - 更改您的数据以表示必要的视图。
我修改别人的小提琴这里:http://jsfiddle.net/SugMK/47/
首先你必须组合你的数据,你比如uid
决定id
和title
,所以您可以将它放在uid
:
var result = _.groupBy(result, (item) => { return item.uid });
二迭代结果对象,其结构像
{
uid1: [
{row1_with_uid1},
{row2_with_uid1}
],
uid2: [
{row1_with_uid2},
{row2_with_uid2}
]
}
并聚集(或不)必要的行与你自定义的逻辑。在你的情况,你必须用br
结合两个code
领域的文本作为分隔符:
_.forEach(result, (items) => {
var newItem = items[0]; // set default.
items.splice(0, 1); // since first item is default - remove it from aggregate array
_.forEach(items, (item) => { newItem.code = newItem.code + "<br />" + item.code; }); // aggregate item.
newResult.push(newItem); // save aggregated item.
});
三您必须汇总字段(代码)encoded
参数设置为false
,用于表示您br
的如HTML,不正文:
{ field: "code", title: "multiline", encoded: false }
PS我认为你可以创建自己更好的实现,但是我创建了这个例子来更好地理解我的想法。
如果您希望让网格的数据源处理数据分组和聚合,那么只需使用网格的数据源即可。下面的代码是razor语法,但是,在Kendo ui js中有一个直接的等价物。
DataSource(dataSource => dataSource
.Server()
.Aggregates(aggregates =>
{
aggregates.Add(p => p.Amount).Sum();
})
.Group(groups => groups.Add(p => p.CustomerName)
)
剑道网格具有按键组合行的功能。你可以试试。 – Nilesh