【问题标题】:How can i add additional html child elements in an MVC ActionLink?如何在 MVC ActionLink 中添加额外的 html 子元素?
【发布时间】:2015-09-06 14:01:09
【问题描述】:

我想在 MVC 中使用以下 html 标记

<a href="/Home/ShoppingCart" class="view-cart">
<span data-hover="View Cart"><span>Cart</span></span></a>

但是当我使用这个时

@Html.ActionLink("Cart", "ShoppingCart")

结果是

<a href="/Home/ShoppingCart">Cart</a>

那么,我该如何添加这些属性和额外的标记?

问题基本上与&lt;spans&gt;有关,我不知道如何在超链接中呈现它们。

【问题讨论】:

  • stackoverflow.com/questions/5907530/… 展示了如何向 ActionLink 添加类属性
  • This overload - @Html.ActionLink("Cart", "ShoppingCart", null, new { @class = "xxxx" })
  • @StephenMuecke 这个重载添加了类,但是在超链接中有额外的标记,我不知道如何添加它们。例如结果是 Cart 这与所需的输出无关。
  • 你不能使用@Html.ActionLink()来做到这一点 - 你需要使用&lt;a href="@Url.Action("ShoppingCart")" class=".."&gt;&lt;span&gt;...&lt;/span&gt;&lt;/a&gt;(或者创建你自己的HtmlHelper扩展方法是如果你经常做的事情)

标签: asp.net-mvc asp.net-mvc-4


【解决方案1】:

您不能在@Html.ActionLink() 生成的&lt;a&gt; 元素内添加额外的html 元素。您将需要使用

<a href="@Url.Action("ShoppingCart")" class="view-cart">
  <span data-hover="View Cart">
    <span>Cart</span>
  </span>
</a>

如果它是你经常做的事情,你可以考虑创建你自己的 HtmlHelper 扩展方法来为你生成标记

【讨论】:

    猜你喜欢
    • 2017-12-21
    • 2023-03-28
    • 1970-01-01
    • 2022-01-16
    • 2021-09-16
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    相关资源
    最近更新 更多