jQuery Kendo 网格从模板调用函数
jQuery Kendo Grid calling a function from template
背景: 我正在尝试在网格上工作,其中一列可以根据网格中的列值使用不同的编辑器。我在 Telerik 站点上找到了一个可用的 example。效果很好!
问题: 我喜欢将 html 文件中的 html 代码与 js 文件中的 jquery 代码分开。一旦我像这样分离出代码,我就会收到一条错误消息,提示“customTemplate is not defined”。 customTemplate 是一个从字段 editor 下的 template 调用的函数。我还创建了一个 JsFiddle 我的代码在本地的样子,但我似乎遇到了同样的错误。
我认为问题出在我调用 customTemplate 函数的模板属性上。我尝试将双引号换成单引号,但似乎也没有用。
下面是 grid 和 customTemplate 函数的定义:
$("#grid").kendoGrid({
dataSource: dataSource,
columns: [
{ field: "id" , title: "ID" },
{ field:"type" , title: "Type" },
{ field: "editor",
title: "Editor",
template: "#=customTemplate(data.type,data.editor)#",
editor: chooseEditor
}],
editable: true
});
});
function customTemplate(type,value) {
if (value == null)
return "";
switch (type) {
case "date":
return kendo.toString(kendo.parseDate(value), 'yyyy/MM/dd');
default:
return value;
}
}
使用函数而不是模板字符串来调用您的函数:
{
field: 'editor',
title: 'Editor',
template: function(dataItem) {
return customTemplate(dataItem.type, dataItem.editor);
},
editor: chooseEditor
}
背景: 我正在尝试在网格上工作,其中一列可以根据网格中的列值使用不同的编辑器。我在 Telerik 站点上找到了一个可用的 example。效果很好!
问题: 我喜欢将 html 文件中的 html 代码与 js 文件中的 jquery 代码分开。一旦我像这样分离出代码,我就会收到一条错误消息,提示“customTemplate is not defined”。 customTemplate 是一个从字段 editor 下的 template 调用的函数。我还创建了一个 JsFiddle 我的代码在本地的样子,但我似乎遇到了同样的错误。
我认为问题出在我调用 customTemplate 函数的模板属性上。我尝试将双引号换成单引号,但似乎也没有用。
下面是 grid 和 customTemplate 函数的定义:
$("#grid").kendoGrid({
dataSource: dataSource,
columns: [
{ field: "id" , title: "ID" },
{ field:"type" , title: "Type" },
{ field: "editor",
title: "Editor",
template: "#=customTemplate(data.type,data.editor)#",
editor: chooseEditor
}],
editable: true
});
});
function customTemplate(type,value) {
if (value == null)
return "";
switch (type) {
case "date":
return kendo.toString(kendo.parseDate(value), 'yyyy/MM/dd');
default:
return value;
}
}
使用函数而不是模板字符串来调用您的函数:
{
field: 'editor',
title: 'Editor',
template: function(dataItem) {
return customTemplate(dataItem.type, dataItem.editor);
},
editor: chooseEditor
}