无法将HTML文本设置为InnerHtml属性

时间:2014-11-02 07:50:05

标签: javascript asp.net-mvc razor

我的应用程序内置了ASP.NET MVC 5.现在,我要做的是应用程序从数据库中检索文本数据并生成一些html文本。因此,我可以通过分配innerHtml属性将html文本设置为特定的div元素。但是,当我尝试将该html文本分配给该div时,它不会渲染。它显示了html文本。

enter image description here

这是我的代码

<script type="text/javascript">
    var elem = document.getElementById('discussion');
    elem.innerHTML = "@Server.HtmlDecode(@discussionDiv.ToString())";
</script>

有没有更好的方法可以用来将html文本设置为我的dom元素?

1 个答案:

答案 0 :(得分:3)

您应该使用Html.Raw

elem.innerHTML = '@Html.Raw(discussionDiv.ToString())';

由于它包含大量双引号",我选择在该值上使用单引号。