У меня возникли проблемы с доступом к данным JSON с вызовом AJAX.Проблемы с доступом к данным JSON
JSON
{
"Ongoing": [
{"name": "meh"},
{"name": "hem"}
],
"Completed": [
{"name": "kfg"},
{"name": "dkfgd"}
]
}
JS
$.ajax({
type: "GET",
dataType: "json",
url: "script/projects.json",
complete: function(data){
for(var i = 0; i < data.Ongoing.length; i++){
console.log(data.Ongoing[i].name);
}
}
})
Когда я пишу в консоль, я получаю следующее сообщение об ошибке:
TypeError: Cannot read property 'length' of undefined
Так по какой-то причине это откидывающее что массив не определен.
Я передал JSON в валидатор, поэтому я знаю, что это действительно JSON. Я знаю, что jQuery $.ajax
автоматически анализирует JSON. Поэтому я смущен, я должен иметь доступ к данным, как обычный объект. Может ли кто-нибудь объяснить мне, что я сделал неправильно, и дать объяснение, как это исправить?
На следующем рисунке показано, как просто писать data
на консольные дисплеи.
Можете ли вы сделать консольный журнал только «данных», чтобы увидеть, что он содержит? – zpr
Несомненно. Я добавлю скриншот к вопросу, чтобы показать, что пишет только данные. –
не может сделать это с помощью 'file: //' см. Мой ответ –