gpt4 book ai didi

javascript - JSON 解析与否?

转载 作者:行者123 更新时间:2023-11-30 12:45:55 25 4
gpt4 key购买 nike

我有一些信息从 PHP 传递到 javascript(不是 AJAX 调用)以初始化一些动态内容。

在服务器端我有

echo 'var ' . $controlID . '_json = JSON.parse(\'' . $control->getOptions() . '\');';

$control->getOptions 在哪里

public function getOptions() {
//some code to build an array here
return json_encode($somearray);
}

这导致以下 javascript 代码浏览器

var ControlName_json = JSON.parse('/*JSON OUTPUT HERE */');

现在,由于某种原因这会产生一个错误。 (错误,意外标记 a)。我检查了一下,我使用的浏览器确实有 JSON。但是,这确实有效:

echo 'var ' . $controlID . '_json = ' . $control->getOptions() ';';

直接把变量赋值成对象有什么问题吗?这会以某种方式“破坏”javascript 吗?

为了完整起见,导致问题的特定 JSON 在下面,但是由于它是由 json_encode 创建的,所以我不确定它是否重要。

{"o0":[{"text":"aguapop","value":"aguapop","selected":false,"parentID":0,"attributes":" value=\"aguapop\""},{"text":"default","value":"default","selected":false,"parentID":0,"attributes":" value=\"default\""},{"text":"fluid","value":"fluid","selected":false,"parentID":0,"attributes":" value=\"fluid\""},{"text":"fresh","value":"fresh","selected":false,"parentID":0,"attributes":" value=\"fresh\""},{"text":"gel","value":"gel","selected":false,"parentID":0,"attributes":" value=\"gel\""},{"text":"professional","value":"professional","selected":false,"parentID":0,"attributes":" value=\"professional\""},{"text":"professional-rtl","value":"professional-rtl","selected":false,"parentID":0,"attributes":" value=\"professional-rtl\""},{"text":"silverwolf","value":"silverwolf","selected":false,"parentID":0,"attributes":" value=\"silverwolf\""},{"text":"wood","value":"wood","selected":false,"parentID":0,"attributes":" value=\"wood\""}]}

最佳答案

在JS中不需要解析JSON,直接赋值给一个变量即可。使用您的 JSON 示例在 JSfiddle 上为我工作:

echo 'var ' . $controlID . '_json = '. $control->getOptions() . ';';

放入 JSON.parse 并在出现意外标记时失败。

关于javascript - JSON 解析与否?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22497691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com