当使用自定义模板创建时,我似乎找不到在kendoui网格上启动的弹出添加和编辑表单上设置标题的简单方法。当我尝试以下示例时,Add和Edit操作在弹出窗口的标题栏中都有“编辑”:
标记:
<script id="popup-editor" type="text/x-kendo-template">
<p>
<label>Name:<input name="name" /></label>
</p>
<p>
<label>Age: <input data-role="numerictextbox" name="age" /></label>
</p>
</script>
<div id="grid"></div>
JavaScript的:
$("#grid").kendoGrid({
columns: [
{ field: "name" },
{ field: "age" },
{ command: "edit" }
],
dataSource: {
data: [
{ id: 1, name: "Jane Doe", age: 30 },
{ id: 2, name: "John Doe", age: 33 }
],
schema: {
model: { id: "id" }
}
},
editable: {
mode: "popup",
template: kendo.template($("#popup-editor").html())
},
toolbar: [{ name: 'create', text: 'Add' }]
});
小提示演示问题:http://jsfiddle.net/codeowl/XN5rM/1/
问题在于,当您按下“添加”或“编辑”按钮时,弹出窗口中的标题栏会显示:“编辑”。我想按“添加”按钮时按“添加”,按“编辑”按钮时按“编辑”。
感谢您的时间,
此致
斯科特
答案 0 :(得分:9)
如果您想要一个简单的解决方案,请将代码添加到网格的编辑事件中,以检查在调用编辑时创建的模型是新模型还是现有模型,并相应地设置文本:
...
edit: function (e) {
//add a title
if (e.model.isNew()) {
$(".k-window-title").text("Add");
} else {
$(".k-window-title").text("Edit");
}
}
...
希望这会有所帮助......
答案 1 :(得分:3)
如果您需要做的唯一事情就是添加标题,您应该使用:
editable : {
mode : "popup",
window : {
title: "Edición",
}
},
除非您需要定义其他内容,否则无需定义模板。
您修改过的小提琴:http://jsfiddle.net/OnaBai/XN5rM/2/