我有一个JavaScript文件,我需要通过Razor语法生成一个动作链接。到目前为止,这是我的代码。
@{
int ID = @:cardId;
@:row.insertCell(0).innerHTML = @Url.Action("Details", "Cards", new { Id = ID});
}
我想在链接中嵌套我自己的文本。即。 <a>MyText</a>
但是,Url.Action方法是我所知道的唯一通过Razor创建链接的方法,而且我没有看到允许我自定义链接文本的重载方法。
答案 0 :(得分:1)
你应该在这里使用Html.ActionLink
。它有一个额外的参数,可以让你创建链接文本。
@{
int ID = @:cardId;
@:row.insertCell(0).innerHTML = @Html.ActionLink("MyText", "Details", "Cards", new { Id = ID }, null)
}
此外,我怀疑Url.Action
无论如何都会帮助你,因为它不会生成<a href="some_url_here"></a>
,它只生成some_url_here
。 Html.ActionLink
生成整个事物。您可以阅读两个here之间的差异。