我在Kendo网格中有一个动态生成的列的列表。我在这里使用colsList只是作为一个例子。
var colsList = ["A", "B", "C"];
for (var j = 0; j < colsList.length; j++){
var columnSchema = {
"field": colsList [j],
template: function (dataItem) {
return getTemplate(dataItem, colsList [j]);
}
};
}
var getTemplate = function (dataItem, field) {
// return tempate format;
};当调用getTemplate时,第二个参数(即字段)始终作为colsList的最后一项在此处传递。我需要准备一个列模板,它将与它相关的列字段的信息。如何才能做到这一点?我尝试过通过许多方法来做到这一点,但都没有成功。
我是kendo.js的新手,对模板不是很熟悉。
有没有其他方法来准备模板,以帮助我实现我想要的。dataItem和关联的列字段是准备模板时的两个主要要求,因为在刷新网格数据源时,需要在模板中检查一些条件,并相应地填充列数据。
发布于 2016-12-13 22:15:58
我终于找到了通过使用jQuery的每个函数而不是使用for循环来获取列字段的方法,如下所示:
var colsList = ["A", "B", "C"];
$.each(colsList, function (index, item) {
var columnSchema = {
"field": item,
template: function (dataItem) {
return getTemplate(dataItem, item);
}
};
});
var getTemplate = function (dataItem, item) {
/* item gives the column field for which template will be set*/
// return tempate format;
};但是我仍然不知道为什么它在for循环和返回在模板中未定义的字段的情况下表现不同。
https://stackoverflow.com/questions/41042601
复制相似问题