2011-01-26 3 views
0

Как читать/печатать содержимое массива JQuery json. Я получаю данные json с примера php-страницы:Прочитать/распечатать содержимое JQuery каждого массива

$jc = $_GET['jsoncallback']; 

$users[1] = array('name' => 'Dave', 'email' => '[email protected]'); 
$users[2] = array('name' => 'Erik', 'email' => '[email protected]'); 

echo $jc . '(' . json_encode($users) . ')'; 

Где jsoncallback - это функция обратного вызова. Все идет нормально. Но как напечатать этот массив?

$.getJSON("http://test.test.test/jtest1.php?jsoncallback=?", 

function(data){ 

     $.each(data, function(i){ 

    $('#testit').html(data.name); 

     }); 

    }); 

Что когда-нибудь случится, я не могу получить «data.name, i.data.name» или любую комбинацию, чтобы напечатать все, что я получаю не определено. Как вы распечатываете массивы JQuery? PLease просто указать мне в правильном направлении. Потребовалось время, чтобы заставить работать $ .getJSON - я могу сделать это с помощью одномерного массива, но я просто не могу заставить многомерный массив печатать. Я знаю, что это «происходит», как я могу alert(i), и я получаю правильные клавиши, но я не могу получить значения.

ответ

3

попробовать это,

$.each(data, function(i,item){ // notice the item 

    $('#testit').html(item.name); 

}); 
0
$.each(data, function() { 
    $('#testit').html(this.name); 
}); 

или, если вы предпочитаете:

$.each(data, function(index, value) { 
    $('#testit').html(value.name); 
}); 
0
$.each(data, function(index, value) { 
    $('#testit').append(value.name + '<br />'); 
}); 

Если вы хотите напечатать все из них :-)

Кроме того, вы 'ожидание обратного вызова в php-коде. введите ?jsoncallback=, а не ?jsoncallback=?