【问题标题】:MVC @html.Actionlink include html i tagMVC @html.Actionlink 包含 html i 标签
【发布时间】:2014-03-30 08:27:52
【问题描述】:

我目前有以下 MVC 代码。

<li>@Html.ActionLink("Home", "Index", "Home")</li>

这会生成以下 HTML 代码

<li>
    <a href="/"></a>
</li>

如何获取以下 HTML 代码?

<a href="#">
    <i class="icon-home icon-white"></i>
     Home
</a>

【问题讨论】:

  • 你不需要使用Html.ActionLink
  • 是什么阻止了您在不使用 ActionLink 帮助器的情况下编写所需的 html?
  • @Rui 该页面不会通过家庭控制器。如果家庭控制器确保用户经过身份验证并被授权查看索引页面,我们就会遇到问题。在用户凭据上运行的视图也可能无法运行。很多原因......
  • 彼得,它将通过家庭控制器。 html 助手只是输出普通的 html。最后,让@Html.ActionLink 或手动 添加锚标记具有完全相同的结果。当您单击该链接时,您的浏览器将完全向服务器发出相同的请求(路由将以完全相同的方式运行、授权等)。实际上,您的回答反映了这一点, Url.Action 返回一个 url 而没有做任何其他事情。如果它有帮助,在某些情况下,如果您有多个路线,您可能需要使用 Url.RouteUrl("Default", new {Controller="Home", Action="Index"})

标签: html asp.net-mvc razor asp.net-mvc-5


【解决方案1】:

解决方法是使用 Url.Action 方法。

<li>
    <a href="@Url.Action("Index", "Home")">
        <i class="glyphicon glyphicon-home"></i> Home
    </a>
</li>

希望它可以帮助其他人。

【讨论】:

    猜你喜欢
    • 2010-09-21
    • 1970-01-01
    • 1970-01-01
    • 2016-05-13
    • 1970-01-01
    • 2015-12-26
    • 1970-01-01
    • 1970-01-01
    • 2013-06-14
    相关资源
    最近更新 更多