Ответ в формате Json из post, отображение каждого результата в div на странице

#jquery #json #api

#jquery #json #API

Вопрос:

Я делаю запрос post к API, и он возвращает Json. Мне нужна помощь в разборе полезной нагрузки json, поскольку это массив. Я хочу отображать каждую итерацию массива (result.payload) и назначать его для отображения в div на моей странице.

 function search() {
    $.ajax({
     url: 'api/search',
        data : JSON.stringify({"text": "school","attributes": ["string"], "Population": 0}),
        contentType : 'application/json',
        type : 'POST',
        success: function (result) {
         console.log(result);
            },
        error: function( jqXhr, textStatus, errorThrown ){
            console.log( errorThrown );
        }
    })
}
  

Вот что возвращается в результате
https://gyazo.com/fe0126af26e376ea4cc1f4ec53cfbad8

Ответ №1:

вы могли бы перебирать полученный массив и генерировать новый div для каждой записи и добавлять его к элементу на вашей странице, вы можете сделать это многими способами, это один из них.

 success: function (result) {
   for(const row of result.payload){
      $("#results").append(`<div>${row.campusName}</div>`);
   }
}
  

для этого требуется, чтобы где-нибудь на странице у вас был div с идентификатором results

обратите внимание, что это не очень обратно совместимо со старыми браузерами.