在Kendo Grid绑定中使用数组

时间:2013-08-27 07:53:55

标签: kendo-ui kendo-grid

我的一个模型字段是一个数组,当我尝试使用它绑定ASP.NET MVC中的网格列并使用Kendo Grid时,我得到错误:“绑定列需要字段或属性访问表达式< /强>“

for(var i=0; i<10 ; i++)
   columns.Bound(p => p.Value[i])

使用模板也无法解决我的问题。

2 个答案:

答案 0 :(得分:1)

您应该能够使用模板为这些列做任何您需要的事情。

参见示例http://jsbin.com/uxefaMI/2/edit

我使用模板来总结数组中的每个值

function numbersTemplate(e) {
  var total = 0;
  $.each(e.numbers, function(i, n) {
    total += parseInt(n, 0);
  });
  return total;
}

答案 1 :(得分:1)

我发现了我的错误。 基本上,网格列只能绑定到对象属性。在当前的情况下,我试图将列绑定到给定属性的值,这是无效配置。下面的示例显示了如何使用ClientTemplate在当前列中呈现给定的属性值:

e.g:

columns.Bound(p => p.Value).ClientTemplate("#=generateTemplate(Value)#");

function generateTemplate(Value) {
var template = "<ul>";
for (var i = 0; i < Value.length; i++) {
    template = template + "<li>" + Value[i] + "</li>";
}

return template + "</ul>";

}