我有一个内容是PHP变量的HTML:
当我使用Javascript:
document.body.innerHTML.replace("<?php echo $content ?>");
更换整个页面,它说的错误:
和jQuery是同样的错误:
jQuery('html').html("<?php echo $content ?>");
有什么办法可以做到这一点,JS和PHP解决方案都OK。
我有一个内容是PHP变量的HTML:
当我使用Javascript:
document.body.innerHTML.replace("<?php echo $content ?>");
更换整个页面,它说的错误:
和jQuery是同样的错误:
jQuery('html').html("<?php echo $content ?>");
有什么办法可以做到这一点,JS和PHP解决方案都OK。
这似乎是少谈引号和特殊字符,更多的是换行。 您可以使用JSON,以防止这些字符出现。
document.body.innerHTML = <?=json_encode($html)?>;
这个作品在我的服务器上:
<?php
$html = <<<HTML
<span>Lorem Ipsum is simply dummy text of the printing and typesetting industry. </span>
<a href="http://google.com">Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.</a>
<strong>When an unknown printer took a galley of type and scrambled it to make a type specimen book</strong>
HTML;
?>
<html>
<body>blah</body>
<script>
document.body.innerHTML = <?=json_encode($html)?>;
</script>
</html>
当然,你可以只用document.body.innerHTML = <?=$html?>;
如果声明$html = json_encode($html);
早在你的脚本。
转换为HTML特殊字符,然后转换回用JS?
var str = "<?php echo htmlspecialchars($content); ?>";
str = str.replace('>', '>').replace('<', '<').replace('"', '"');
jQuery('body').html(str);