编辑Html.ActionLink输出字符串

时间:2010-03-11 21:48:17

标签: asp.net html actionlink

我正在尝试使用Html.ActionLink输出以下HTML:

<a href="/About" class="read-more">Read More<span class="arrow">→</span></a>

我通过做一个ActionLink来完成它,它会输出一个<a>标签然后操纵字符串。

<%= Html.ActionLink("[[replace]]", "Index", "About", null, new { @class = "read-more" }).ToHtmlString().Replace("[[replace]]", "Read More" + "<span class='arrow'>→</span>")%></p>

如果我可以将HTML直接放入ActionLink,那就好了,但似乎没有办法基于我的互联网搜索。当然,它有效,但它似乎是一个黑客。有没有更好的方法来实现这一目标?

3 个答案:

答案 0 :(得分:2)

亚伦......你有没有解决这个问题?

当我需要的不仅仅是输出HTML中的链接文本时,我在href属性中使用Url.Action。

<a href="<%= Url.Action("About") %>" class="read-more">Read More<span class="arrow">→</span></a>

希望这有帮助。

干杯, -jc

答案 1 :(得分:1)

您可以编写自己的HTML帮助程序类,并使其适合您的任何需求。我之前写了一些,我看到你用MVC获得的只是一个开始。

这是一个带有教程的link。和here's以及关于如何使用的官方MS视频。

答案 2 :(得分:1)

如果您只需要箭头并且可以使用图像,则可以使用样式表将该图像放在链接之后

.readmore-link{background-image: url('/image.png'); padding-right: 16px; /*...*/}

只需调整图像位置等。

否则我建议为HtmlHelper编写扩展方法。