field: 'Status' ,
width: '70px' ,
template: "#if(Status == 'On Request') {#<div class='redAndBold'>#:Status</div>#}#"
Run Code Online (Sandbox Code Playgroud)
我有一个剑道 UI 网格,其中“状态”是从 javascript 文件填充的。模型中的Status可以是“On Request”,我想要的是:如果是“On Request”,则为其添加一个类“redAndBold”。此特定示例中的语法给出了“用户未定义”错误。
谁能给我一些关于如何正确执行此操作的指示?
kendo.templates 依赖于 #=fieldName# 或 #:fieldName#。在当前情况下,“状态”后面缺少结束符“#”。在初始化期间绑定到数据项时,将使用字段的值对模板进行评估。要执行 JavaScript 逻辑,请仅使用“#JS 逻辑在此处#”。可以在此处找到更多信息Kendo UI 模板。
为了避免模板语法混乱,可以使用纯 JavaScript 函数来代替:
template: "#=templateFunc(data)#"
// JS handler
function templateFunc(dataItem){
if(dataItem.Status== 'On Request') {
return "<div class='redAndBold'>"+dataItem.Status+"</div>";
} else{
return dataItem.Status;
}
}
Run Code Online (Sandbox Code Playgroud)