我正在尝试将.json文件加载到javascript中的变量中,但无法正常工作。这可能只是一个小错误,但我找不到它。
当我使用静态数据时,一切工作正常:
var json = { id: "whatever", name: "start", children: [{ "id": "0.9685", "name": " contents:queue" }, { "id": "0.79281", "name": " contents:mqq_error" } }] }
我把一切的在{}一个content.json文件,并试图以加载到本地JavaScript变量作为解释在这里:负载JSON转换成变量。
{}
content.json
var json = (function() { var json = null; $.ajax({ 'async': false, 'global': false, 'url': "/content.json", 'dataType': "json", 'success': function(data) { json = data; } }); return json; })();
我使用Chrome调试器运行它,它总是告诉我该变量的json值为null。该content.json文件与调用它的.js文件位于同一目录中。
json
null
我错过了什么?
如果content.json直接将对象粘贴到该对象,则它是无效的JSON。除非键值为数字,布尔值或复合(数组或对象),否则JSON键 和值必须用双引号("not )引起来。JSON不能包含函数或值。以下是您作为有效JSON的对象。'``null``undefined
"
'``null``undefined
{ "id": "whatever", "name": "start", "children": [ { "id": "0.9685", "name": " contents:queue" }, { "id": "0.79281", "name": " contents:mqq_error" } ] }
你也有一个额外的}。
}