如何为kendo ui网格编辑命令链接指定自定义模板

时间:2014-03-20 07:18:52

标签: kendo-ui kendo-grid

我正在努力为kendo ui grid提供自定义编辑命令链接。假设我有以下网格

<div id="request-grid" style="height: 400px;"></div>

<script type="text/javascript">
    $("#request-grid").kendoGrid({
        dataSource: dataSource,
        columns: [{
            field: "Id", title: "Id", width: 20
        }, {
            field: "FromName", title: "Req Name", width: 150
        ....
        }, {
            command: [{ name: "edit", template: kendo.template('@Html.ActionLink("Edit","_SoftwareRequestEdit","SoftwareRequest",new {id = "#= Id #"}, null)') }]
        }],
    });
</script>

我已将上面的代码用于编辑链接,但我不记得具体细节。我现在已经摸不着头脑了2个小时的正确语法,但仍然无法弄清楚。上面的编辑命令模板会生成以下链接

<a href="/Admin/SoftwareRequest/_SoftwareRequestEdit/%23%3d%20Id%20%23">Edit</a>

而我期待这个

<a href="/Admin/SoftwareRequest/_SoftwareRequestEdit/3">Edit</a>

表示 Id等于3

的网格行

如何使用正确的 Id 值正确生成修改链接的任何想法

1 个答案:

答案 0 :(得分:0)

从模板的定义中删除kendo.template(),KendoUI已经知道它必须是一个模板,所以它需要一个string而不是一个kendo.template`对象。请参阅其文档here中的文档和示例。

示例:

<div id="grid"></div>
<script>
$("#grid").kendoGrid({
    columns: [ {
        field: "name",
        template: "<strong>#: name # </strong>"
    }],
    dataSource: [ { name: "Jane Doe" }, { name: "John Doe" } ]
});
</script>