我正在尝试向Kendo MVC网格添加自定义模板。 我的模板应包含2件事
我正在尝试以下代码:
.ToolBar(toolbar =>
{
toolbar.Template(@<text>
<div class="toolbar">
<label class="category-label" for="category">Filter by name:</label>
@(Html.Kendo().AutoComplete()
.Name("employees")
.DataTextField("empName")
.Filter("contains")
.MinLength(3)
.Events(e => e.Change("nameChange"))
.DataSource(ds =>
{
ds.Read("FilteringList", "Employee");
})
)
</div>
</text>);
toolbar.Create().Text("New Record");
})
但这不起作用。我只能看到自动完成框。
关于如何完成我的要求的任何想法?
答案 0 :(得分:6)
Nitin Mall的答案可以通过替换
来简化<a class="k-button k-button-icontext k-grid-add"
href="/YourControllerName/YouCreateActionResultJsonName?grdSearch-mode=insert">
New Record</a>
带
<a class='k-button k-button-icontext k-grid-add'
href='#'><span class='k-icon k-add'></span>Add new record</a>
这是有效的,因为网格使用jquery委托来附加网格的单击事件处理程序,该处理程序将AddRow方法调用到具有类“k-grid-add”的项目
答案 1 :(得分:2)
删除以下行
toolbar.Create().Text("New Record");
从ToolBar部分并在模板中添加按钮。 请参阅以下代码:
.ToolBar(toolbar =>
{
toolbar.Template(@<text>
<div class="toolbar">
<a class="k-button k-button-icontext k-grid-add" href="/YourControllerName/YouCreateActionResultJsonName?grdSearch-mode=insert">New Record</a>
<label class="category-label" for="category">Filter by name:</label>
@(Html.Kendo().AutoComplete()
.Name("employees")
.DataTextField("empName")
.Filter("contains")
.MinLength(3)
.Events(e => e.Change("nameChange"))
.DataSource(ds =>
{
ds.Read("FilteringList", "Employee");
})
)
</div>
</text>);
})