2015-06-05 67 views
0

我有以下HTML字符串: $htmlString = '<div class="foo">bar</div>';JSON.parse與json_encode和HTML

我想這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查看)

沒有人有另一種解決辦法?

回答

0

您不需要JSON.parse。你可以這樣做:

<script> 
var html = <?= json_encode($htmlString) ?>; 
</script> 

json_encode的結果已經包含有效的JavaScript數據。

+1

有時候生活很簡單,我對喚醒的額頭很有興趣 – AgeDeO