2012-04-19 13 views
6

Otrzymuję identyfikator i nazwę kategorii z bazy danych mysql.Jak wydrukować obiekt/tablicę jquery

Kiedy jestem alarmując wynik, otrzymuję:

[{"id":"197","category":"Damskie"},"id":"198","category":"M\u0119skie"}] 

(Czy ten przedmiot?)

  1. Jak mogę wydrukować wynik takiego:

    damskie

    M \ u0119skie

  2. M \ u0119ski - ma złe kodowanie. Powinno to być Męskie. Jak mogę to zmienić?

Odpowiedz

22
var arrofobject = [{"id":"197","category":"Damskie"},{"id":"198","category":"M\u0119skie"}]; 

$.each(arrofobject, function(index, val) { 
    console.log(val.category); 
}); 
2

Twój wynik jest obecnie w formie łańcucha, trzeba analizować go jako JSON.

var obj = $.parseJSON(result); 
alert(obj[0].category); 

Dodatkowo, jeśli ustawić typ danych wywołania AJAX robicie do json, można pominąć ten krok $.parseJSON().

+0

PO nigdy nie powiedział, że jest to wywołanie AJAX: P –

+0

@Vega To prawda, ale jeśli nie jest to wywołanie ajax, może to nie musi być json! –

+0

haha ​​prawda ... właśnie żartowałem. Najprawdopodobniej powinien to być zwrot z AJAX. –

6

Co masz z serwera jest ciąg jak poniżej:

var data = '[{"id":"197","category":"Damskie"},{"id":"198","category":"M\u0119skie"}]'; 

Następnie można użyć JSON.parse funkcję, aby zmienić go do obiektu. Następnie należy przejść do kategorii jak poniżej:

var dataObj = JSON.parse(data); 

console.log(dataObj[0].category); //will return Damskie 
console.log(dataObj[1].category); //will return Męskie 
+0

Używam tego przykładu z jQuery.ajax() i to też działa. Dzięki. – Sadu