如何在Html.ActionLink的LinkText中使用HTML标记?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (16)

在Html.ActionLink的LinkText中可以使用HTML标记吗?例如,如果我想在链接的文本中加粗,我会尝试类似于以下内容:

<%= Html.ActionLink("Some <b>bold</b> text", "Index")%>

但这只是输出

Some <b>bold</b> text

我知道我可以通过使用锚标记和使用Url.Action设置URL来实现这一点,但我只想知道这是否可行。

提问于
用户回答回答于

不,这是不可能的。

需要手动编写<a>标签。

用户回答回答于

Html.ActionLink帮助程序HTML会对链接文本进行编码,从而防止将HTML嵌入到链接文本中。

出于同样的原因,不能使用Html.ActionLink并传入标签以使图像成为超链接。

对于链接的基本样式,我建议使用Html.ActionLink重载之一通过匿名对象语法指定CSS样式,如下所示...

@Html.ActionLink("Please Edit Me", "Edit", null, new { style="font-weight:bold;" })

不幸的是,当你想要的只是Edit这个单词时,它会将粗体应用于超链接的整个文本。在这种情况下,我会这样做...

<a href="@Url.Action("Edit")">Please <b>Edit</b> Me</a>

... 或这个 ...

<a href="@Url.Action("Edit")">Please <span style="font-weight:bold;">Edit</span> Me</a>

扫码关注云+社区