我有一个剑道MVC网格,其读取动作可以成功完成
@(Html.Kendo().Grid<MyModel>()
.Name("Name")
.AutoBind(false)
.Columns(columns =>
{
...
columns.Bound(c => c.ItemCode).ClientTemplate("#= ItemCode #").Title("Item").Width(300);
})
.Pageable(page =>
{
page.Enabled(true);
})
.Scrollable(s => s.Height(400))
.Sortable(s => s.Enabled(false))
.Editable(ed => ed.Mode(GridEditMode.PopUp).TemplateName("MaterialFormEditor").Window(w => { w.Title(""); w.Width(700); }).DisplayDeleteConfirmation(false))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Model(model => model.Id(p => p.JobNo))
.Read(read => read.Action(...)
.ServerOperation(true)
)
)
public class MyModel
{
public string ItemCode;
}
(上面的代码是简化的,所以ClientTemplate内容只是字段值本身,但问题仍然可以重现)
现在的问题是,当我点击“添加新记录”按钮时,会出现一个javascript错误,并且不会弹出任何窗口。
错误说:Uncaught ReferenceError: ItemCode is not defined
然而,当我删除.ClientTemplate()
时,一切顺利。
错误的原因是什么?如何解决?
答案 0 :(得分:0)
老问题,我知道...
我遇到了类似的问题,必须添加反斜杠才能使其正常工作:
columns.Bound(c => c.ItemCode).ClientTemplate("\\#= ItemCode \\#").Title("Item").Width(300);