我得到了以下html字符串:$htmlString = '<div class="foo">bar</div>';
我想使用以下代码来json_encode这个字符串并在javascript变量中解析这个字符串:JSON.parse('<?= json_encode($htmlString, JSON_HEX_QUOT | JSON_HEX_TAG); ?>')
不幸的是,我的javascript返回一个错误(Unexpected token f),因为类声明中的双引号破坏了json字符串。
重要:--这是一个简化的数组,我实际上是用JSON编码的。受影响的字符串只是复杂多层数组的一小部分。
将$htmlString = '<div class="foo">bar</div>';更改为$htmlString = "<div class='foo'>bar</div>";是一种选择,但却是一个庞大的选项(我需要更改大约500个视图)。
有人有别的解决办法吗?
发布于 2015-06-05 07:32:08
你不需要JSON.parse。你可以这样做:
<script>
var html = <?= json_encode($htmlString) ?>;
</script>json_encode的结果已经包含有效的javascript数据。
https://stackoverflow.com/questions/30660025
复制相似问题