我正在使用多个短语从数据库返回数据。其中之一是以下文本:Submitted an Idea
我想使所有文本中的“想法”成为超链接,所以我想在剃刀视图中使用替换功能将“想法”一词替换为HTML助手:
@item.RewardType.Replace("Idea", @Html.ActionLink("Idea", "ChallengeIdea", "Ideas", new { id = item.fkiIdeaId }, null))
我环顾了一下,但找不到任何东西。有人建议使用@ Url.Action-但问题仍然相同。
我该怎么做?还是使用HTML帮助程序是错误的方法?
感谢您的帮助。
答案 0 :(得分:1)
您可以尝试以下方法:
@Html.Raw(item.RewardType.Replace("Idea", $"<a href='/ideas/challengeidea/{item.fkiIdeaId}'>Idea</a>"))
或
@Html.Raw(item.RewardType.Replace("Idea", "<a href=/ideas/challengeidea/" + item.fkiIdeaId+">Idea</a>"))
答案 1 :(得分:0)
HTML帮助器可以帮助。当他们产生的并发症多于价值时,他们就没有用
<span>Submitted an <a href="@Url.Action("ChallengeIdea", "Ideas", new { id = item.fkiIdeaId })">Idea</a></span>
如果资源中有RewardType并且不能使用纯HTML,则可以将RewardType设置为"Submitted an <a href=\"{0}\">Idea</a>"
并使用string.format