我正在使用asp.net mvc。我需要生成一个如下所示的链接:
{{1}}
使用asp.net mvc ActionLink助手。有没有办法做到这一点?
答案 0 :(得分:3)
FWIW,这有效:
@Html.ActionLink("Delete", "index", null, new { @class = "delete-field", href = "#" })
但是像前面提到的那样,做这样的事情并不是很重要。你也可以建立一个扩展方法(再次,矫枉过正):
public static class HtmlHelperExtensions
{
public static MvcHtmlString HashLink(this HtmlHelper htmlHelper, string text, string className = "")
{
var anchor = new TagBuilder("a");
anchor.InnerHtml = text;
anchor.Attributes.Add("href", "#");
if(!string.IsNullOrWhiteSpace(className))
{
anchor.AddCssClass(className);
}
return MvcHtmlString.Create(anchor.ToString());
}
}
然后像这样使用它:
@Html.HashLink("Delete", "delete-field")
答案 1 :(得分:0)
顾名思义,ActionLink
可以在MVC应用程序中创建指向Action
的链接。由于您只是想创建一个不使用哈希的链接,我建议您使用您在问题中发布的HTML代码。这里不需要使用ActionLink
或任何其他帮助。
答案 2 :(得分:0)
在这种情况下,我切换到@Url.Action
方法并在链接后添加哈希,如下所示:
<a class="delete-field" href="@Url.Action("Action", "Controller")#hashvalue">Delete</a>
UrlHelper
仅生成href
标签的a
部分,因此您可以根据需要添加内容。 API Reference