Dun*_*can 2 asp.net datatable jquery razor asp.net-mvc-3
我知道可以在MVC3中的Javascript中嵌入@Html,但是我无法使用以下内容并且不确定这是否可行.
使用jQuery DataTable,我有一个AJAX调用来创建我的新行,然后我使用datatable API以编程方式添加它.这一切都有效,但后来我想把我的编辑ActionLink放到行上,它只显示文本"编辑",而不是链接.
当然我可以手动完成,只是想知道是否有更好的选择.
例如
tablePallets.fnAddData([ GetPalletActionLinks(), etc...
function GetPalletActionLinks() {
var result = @Html.ActionLink("Edit", "EditPallet", new { id = 1 });
return result;
}
Run Code Online (Sandbox Code Playgroud)
我目前硬编码ID = 1,但我可以轻松地为新创建的行获取此信息.
谢谢邓肯
我认为在链接周围添加引号很简单:
var result = '@Html.ActionLink("Edit", "EditPallet", new { id = 1 })';
Run Code Online (Sandbox Code Playgroud)
这将生成整个<a>标记.您还可以做的就是返回网址:
var result = '@Url.Action("EditPallet", new { id = 1 })';
Run Code Online (Sandbox Code Playgroud)
并使用jQuery将其嵌入现有的锚中:
<!-- let's imagine this already exists -->
<a href="#" id="dynamicLink">Edit</a>
// result is ovbiously what the other function returns
$("#dynamicLink").attr("href", result);
Run Code Online (Sandbox Code Playgroud)