Я пытаюсь загрузить файл .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 в переменную .
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 , который вызывает его.
Что я пропустил?
/content.json
означает, что файл находится на корневом уровне вашего веб-приложения. Измените наcontent.json
(без косой черты), чтобы указать его в том же каталоге, где находится ваш файл сценария. Только в том случае, если ваш файл скрипта находится в каталоге корневого уровня, он будет работать.