Ajax.Actionlink 无法使用 Telerik MVC 网格

Ajax.Actionlink not working with Telerik MVC Grid

我意识到这是对我自己问题的回答,但在阅读 this link on the meta 之后我想我会 post 希望它能帮助别人避免像我一样花费数小时试图找到答案.

我试图将 Ajax.Actionlink 添加到 MVC 网格的客户端模板中,但出现了神秘错误 'Invalid template'。 最后发现问题源于UpdateTargetID = "myElement"。 Ajax.ActionLink 为完全破坏网格的更新目标生成一个未转义的“#”。

我没有每月计划 post 到有关此问题的 Telerik 论坛,否则我会有。

我的解决方法是:

columns.Bound(p => p.ID).Title("myTitle")
                            .ClientTemplate(Ajax.ActionLink("View", "myAction", "myController", new { myParam = "#=ID#" }, new AjaxOptions() { OnSuccess = "myJSFunction" }).ToHtmlString());


然后:

function myJSFunction(response) {
    $("#updateTargetElement").html(response);
}