У меня есть этот файл Json:
[{ "id": "2719986", "orario": "00:30", "casa": "Bahia", "trasferta": "Internacional" } , { "id": "2719991", "orario": "02:00", "casa": "Palmeiras", "trasferta": "Botafogo RJ" }]
Я пытаюсь извлечь с помощью метода ajax, но ответ не определен.
$.ajax({
type: "GET",
url: "load.php",
success: function(data) {
var data = jQuery.parseJSON(data);
var id = data.id;
var orario = data.orario;
var casa = data.casa;
var trasferta = data.trasferta;
var matches = orario+" "+casa+" "+trasferta+"";
console.info(matches);
}
});
Спасибо за все!
вам не хватает [ в начале строки json.
извините плохо скопировал. добавлен теперь [с console.info (data) правильно получить весь файл json.
Итак, какое устранение неполадок вы сделали? Не так много информации для работы отсюда



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Используйте forEach или for-loop для извлечения данных object, ваши данные поступают в array из.
$.ajax({
type: "GET",
url: "load.php",
success: function(response) {
var response = jQuery.parseJSON(response);
response.forEach(function(data) {
var id = data.id;
var orario = data.orario;
var casa = data.casa;
var trasferta = data.trasferta;
var matches = orario + " " + casa + " " + trasferta + "";
console.info(matches);
})
}
});
var response = [{
"id": "2719986",
"orario": "00:30",
"casa": "Bahia",
"trasferta": "Internacional"
}, {
"id": "2719991",
"orario": "02:00",
"casa": "Palmeiras",
"trasferta": "Botafogo RJ"
}];
response.forEach(function(data) {
var id = data.id;
var orario = data.orario;
var casa = data.casa;
var trasferta = data.trasferta;
var matches = orario + " " + casa + " " + trasferta + "";
console.info(matches);
})Определенный вами объект данных JSON содержит два массива.
В вашем обратном вызове успеха ajax вам нужно перебрать элементы массива следующим образом:
data = JSON.parse(data); //No need to use jQuery parse here
data.forEach(function(dataItem){
var id = dataItem.id;
var orario = dataItem.orario;
var casa = dataItem.casa;
var trasferta = dataItem.trasferta;
var matches = orario+" "+casa+" "+trasferta+"";
console.info(matches);
})
Лучшее решение! работал у меня. большое спасибо :)
Что вы получаете, когда выполняете console.info (данные) внутри
success?