Получить результат из файла Json с помощью Ajax / jQuery

У меня есть этот файл 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); 
        }
    });

Спасибо за все!

Что вы получаете, когда выполняете console.info (данные) внутри success?

Ankit Agarwal 24.08.2018 13:29

вам не хватает [ в начале строки json.

GottZ 24.08.2018 13:30

извините плохо скопировал. добавлен теперь [с console.info (data) правильно получить весь файл json.

cloude 24.08.2018 13:31

Итак, какое устранение неполадок вы сделали? Не так много информации для работы отсюда

charlietfl 24.08.2018 13:32
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
4
95
2

Ответы 2

Используйте 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); 
})

Лучшее решение! работал у меня. большое спасибо :)

cloude 24.08.2018 13:38

Другие вопросы по теме