我会将一个php json对象保存在jquery变量中。
<?php
$arr = array();
for ($i = 0; $i < 5; $i++) {
$arr[] = array('id'=>$i, 'text'=>$i);
}
$arr = json_encode($arr);
?>
<input id="phpObj" type="hidden" value="" data-items='<?php echo $arr; ?>'>
浏览器html源显示
<input id="phpObj" type="hidden" data-items="[{"id":0,"text":0},{"id":1,"text":1},{"id":2,"text":2},{"id":3,"text":3},{"id":4,"text":4}]">
为了获取php对象,我这样做了
var data = jQuery.parseJSON($('#phpObj').data('items'));
console.log(data);
但是我发现了这个错误
SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data
我尝试使用jQuery.parseJSON(JSON.stringify($('#phpObj').data('items')));
但没有成功。 SyntaxError: unterminated string literal
我该如何解决这个问题?感谢
答案 0 :(得分:2)
JSON字符串包含用于包装数据值的相同类型的引号。请尝试使用单引号。
答案 1 :(得分:1)