2016-04-19 3 views
1

В настоящее время я изучаю API RESTful. В настоящее время я могу распечатать JSON на консоли, но как бы я смог повторить его на реальной веб-странице ... Любые советы были бы очень благодарны. См. Мой код ниже.Echo JSON в PHP

$(document).on("ready", function(){ 
 
    loadData(); 
 
}); \t 
 
\t \t \t 
 
var loadData = function(){ 
 
    $.ajax({ 
 
    type:"POST", 
 
    url:"api.php" 
 
    }).done(function(data){ 
 
    console.log(data); 
 
    var post = JSON.parse(data); 
 
    for(var i in post){ 
 
     $("#content").append(post[ i ].usuario + " " + post[ i ].nombres + "<br>"); 
 
    } 
 
    }); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>

+0

Что 'console.log (данные);' вернуться? – Aurel

+0

@Aurel Возвращает содержимое таблицы из базы данных в JSON. –

+1

Почему вы говорите, что вы не можете сейчас печатать JSON? – Aurel

ответ

1

пытаются использовать JQuery .each() цикл, он должен быть полезным в вашем случае (итерация на объект JSON)

https://api.jquery.com/each/

Помните разницу между массивом тип и тип объекта; вы не можете перебирать простой цикл «FOR» на объекте - объект не имеет значения итерации - объекты имеют ключи, которые вы должны вызывать для получения данных. Например:

var object = { name: 'Foo' } 

Чтобы получить значение "Foo" вы должны позвонить: object.name

0

Вы можете использовать forEach перебрать массив в JavaScript.

$(document).on("ready", function(){ 
 
    loadData(); 
 
}); \t 
 
    \t \t \t 
 
var loadData = function(){ 
 
    $.ajax({ 
 
    type:"POST", 
 
    url:"api.php" 
 
    }).done(function(data){ 
 
    console.log(data); 
 
    var post = JSON.parse(data); 
 
     
 
    // Foreach item in post 
 
    post.forEach(item, index) { 
 
     $("#content").append(item.usuario + " " + item.nombres + "<br>"); 
 
    } 
 
    }); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 
 

 
<div id="content"></div>