在 Razor / MVC3 中使用 @Html.ActionLink 获取原始文本?
给定以下 Html.ActionLink:
@Html.ActionLink(Model.dsResults.Tables[0].Rows[i]["title"].ToString(), "ItemLinkClick",
new { itemListID = @Model.dsResults.Tables[0].Rows[i]["ItemListID"], itemPosNum = i+1 }, ...
模型中的数据在标题字段中包含 HTML。但是,我无法显示 HTML 编码值。 IE。带下划线的文本显示,周围带有 ....
。
我已经在 ActionLink 的文本部分尝试过 Html.Raw,但没有成功。
有什么建议吗?
Given the following Html.ActionLink:
@Html.ActionLink(Model.dsResults.Tables[0].Rows[i]["title"].ToString(), "ItemLinkClick",
new { itemListID = @Model.dsResults.Tables[0].Rows[i]["ItemListID"], itemPosNum = i+1 }, ...
Data from the model contains HTML in the title field. However, I am unable to display the HTML encoded values. ie. underlined text shows up with the <u>....</u>
around it.
I've tried Html.Raw in the text part of the ActionLink, but no go.
Any suggestions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
如果您仍然想使用助手为链接文本创建带有原始 HTML 的操作链接,那么我不相信您可以使用
Html.ActionLink
。但是,此 stackoverflow 问题的答案描述了创建一个执行此操作的助手。我会手动编写链接 HTML,并使用
Url.Action
帮助器创建Html.ActionLink
本来会创建的 URL:If you still want to use a helper to create an action link with raw HTML for the link text then I don't believe you can use
Html.ActionLink
. However, the answer to this stackoverflow question describes creating a helper which does this.I would write the link HTML manually though and use the
Url.Action
helper which creates the URL whichHtml.ActionLink
would have created:MVCHtmlString.Create
应该可以解决问题。MVCHtmlString.Create
should do the trick.使用下面的操作链接,您不需要在模型中传递 html。让 css 类或内联样式决定 href 的装饰方式。
Using the actionlink below you do not need to pass html in the model. Let the css class or inline style determine how the href is decorated.
在这些情况下,您应该采取其他路径
请记住,Razor 助手可以帮助您,但您仍然可以以 HTML 方式执行操作。
those are the cases that you should take the other path
Remember that Razor helpers, help you, but you can still do things in the HTML way.
你也可以使用这个:
You could also use this: