innerHTML没有显示数据库中的html

时间:2015-07-02 14:42:06

标签: javascript html

我有一个问题,我有一个iframe屏蔽textarea几乎像一个WYSIWYG场景。所以它很好,并将html发布到数据库字段中。但是,当我从数据库中将其调回iframe时,它没有显示出来?是否有限制因素将html插入iframe?

<script> 
var iframe = document.getElementById('editor'), 
iframedoc = iframe.contentDocument || iframe.contentWindow.document; 
iframedoc.body.innerHTML ="<?php echo ($row[2]); ?>"; // Here is how I retrieve the table content - but does not display inside of the iframe.
</script> 

如果我将其更改为innerText,它只会将原始html作为纯文本吐出。

1 个答案:

答案 0 :(得分:2)

每当您将数据从一种语言移动到另一种语言时,都需要使用转义函数。

如果您将数据从PHP移动到JavaScript,则可以使用json_encode

iframedoc.body.innerHTML = <?php echo json_encode($row[2]); ?>;

想象一下,如果字符串是"; document.location.href="hxxp://naughty.hackers.xxx";",那么如果你不逃避它就会出问题。