所以我有数据需要通过php获取。然后,应将此数据保存到 .php 文件中的 JavaScript 变量中,以回显该值:
$json = json_encode($requirements);
echo "<script>
var myvar = '<?php echo $json; ?>';
</script>";
数据包含单引号,这会在 Chrome 中产生语法错误:
Uncaught SyntaxError: Unexpected identifier
页面源看起来像错误:
var myvar = '<?php echo {"data":{"data":{"1":{"description":"Don' t}}}}; ?>';
直到“Don'”为止的整个字符串都是红色的。
防止 json_encode 失败的正确方法是什么(除了直接将数据调用到 js 之外)?
最佳答案
然后您需要转义 '
字符,例如使用反斜杠 \
:
{"data":{"data":{"1":{"description":"Don\'t}}}}
或者当您使用 php 时,您可以使用 addslashes
功能
关于javascript - JSON 包含单引号导致语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38351609/