【问题标题】:MVC 4 Razor view Dynamically rendering Anchor tagMVC 4 Razor 视图动态渲染锚标记
【发布时间】:2016-08-23 13:39:44
【问题描述】:

尝试渲染由锚标记组成的动态 HTML,但在浏览器上无法正确渲染。

代码:

                    @{string str = Convert.ToString(ViewBag.DynamicHTML);
                    Html.Raw(str)

输出:

                        <a&nbsp;href="http: www.test.com="" categories=""                 test Category"=""><strong>test Category</strong> </a&nbsp;href="http:> }

任何帮助将不胜感激

【问题讨论】:

  • 在发布您的下一个问题/答案之前,请花点时间阅读stackoverflow.com/editing-help
  • DynamicHTML的内容是什么?
  • 准确发布您的代码。并发布您提供DynamicHTML 值的部分,如您的代码中所示。因为您发布的代码不会编译。缺少}。而且,MVC 无法将您之前的评论呈现到您提到的内容中。除非有不同。请发布确切的代码。

标签: asp.net-mvc razor


【解决方案1】:

我猜你在正确转义字符串时遇到了一些问题。我尝试了以下方法(请注意,href 属性的双引号已转义):

@{ 
    var str = Convert.ToString(@"<a href=""test.com/Categories/TestCategory""><strong> Test Category </strong></a>");
}
@Html.Raw(str)

这写了一个有效的 HTML 输出

<a href="test.com/Categories/TestCategory"><strong> Test Category </strong></a>

【讨论】:

  • 当我们对链接进行硬编码时,它工作正常,但是当您尝试从 viewbag 加载时,它就搞砸了。
  • 请按照Javad的建议显示创建字符串并在ViewBag中填充DynamicHtml的代码,然后我们可以仔细查看。
猜你喜欢
  • 1970-01-01
  • 2017-12-22
  • 1970-01-01
  • 1970-01-01
  • 2011-05-02
  • 2020-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多