首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Razor视图中的替换函数中使用@Html.ActionLink

问在Razor视图中的替换函数中使用@Html.ActionLink
EN

Stack Overflow用户
提问于 2019-01-25 13:25:03
回答 2查看 490关注 0票数 0

我用多个短语从数据库中返回数据。其中之一是以下文本:Submitted an Idea

我想让所有文本中的"Idea“成为一个超链接,所以我想在剃须刀视图中使用一个替换函数来用我的Html助手替换"Idea”这个词:

代码语言:javascript
复制
@item.RewardType.Replace("Idea", @Html.ActionLink("Idea", "ChallengeIdea", "Ideas", new { id = item.fkiIdeaId }, null))

我环顾了一下四周,但什么也找不到。有人建议使用@Url.Action,但问题依然存在。

我该怎么做?还是使用Html助手的方法是错误的?

谢谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-25 13:50:08

你可以试试这个:

代码语言:javascript
复制
@Html.Raw(item.RewardType.Replace("Idea", $"<a href='/ideas/challengeidea/{item.fkiIdeaId}'>Idea</a>"))

或

代码语言:javascript
复制
@Html.Raw(item.RewardType.Replace("Idea", "<a href=/ideas/challengeidea/" + item.fkiIdeaId+">Idea</a>"))
票数 2
EN

Stack Overflow用户

发布于 2019-01-25 13:28:33

helpers在一般情况下是用来帮助的。当它们产生比价值更多的并发症时,它们就没有用处了。

代码语言:javascript
复制
<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。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54366213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档