1

私はこれをしようとしています:

<?php $php_array = array ('var1' => "l'ape"); ?>

<script type="text/javascript">
var my_javascript_object = jQuery.parseJSON('<?php echo json_encode($php_array); ?>');
</script>

「Uncaught SyntaxError: Unexpected identifier」というエラーが表示されました。問題は、$php_array の var1 の値の単一引用符です。

これは機能しません

 <?php $php_array = array ('var1' => "l\'ape"); ?>
4

2 に答える 2

3

を JSON.parse で解析する必要はありません。Javascript 文字列の代わりにオブジェクト リテラルとして使用するだけです。

var my_javascript_object = <?php echo json_encode($php_array); ?>;
于 2012-06-22T15:14:30.597 に答える
2

問題は、JSON を JavaScript 文字列に入れようとすることです。

代わりにこれを行います:

var my_js_obj = <?php echo json_encode($php_array); ?>;

JSON 文字列は有効な JavaScript 式であり、JS コードに直接挿入するだけです。


本当に JSON を含む文字列を作成したい場合 (そうしないでください! )、次のようにします。

var my_json_string = <?php echo json_encode(json_encode($php_array)); ?>;
var my_js_obj = $.parseJSON(my_json_string);
于 2012-06-22T15:14:38.967 に答える