Как заполнить массив jquery объектом json

0

Я пытаюсь заполнить массив с ответом JSON. Ответ JSON от ajax:

[{"id":"1","category":"Chloting"},{"id":"2","category":"Shoes"},{"id":"3","category":"Jewelry and Watches"},{"id":"4","category":"Accessories"}]

Мой код следующий:

var categories = [];

$('body').on("click", '.category_editable', function(){
    $.ajax({
        type:"get",
        dataType: "json",
        url:"ajax_php/get_all_categories.php",
        success:function(data){
            $.each( data, function( i, itemData ) {
               categories[i] = itemData.category;
            });
            console.log(categories);
        }
     });
});

И то, что я получаю, это массив без ключей, потому что я не знаю, как их вставить в массив:

["Chloting", "Shoes", "Jewelry and Watches", "Accessories"]

Но мне нужно будет в объектном формате:

["1":"Chloting", "2":"Shoes", "3":"Jewelry and Watches","4":"Accessories"] 
Теги:

3 ответа

1

+ Изменить

var categories = [];

в

var categories = {};
0
$(function(){

   var d={};
    var results=[
    [{"id":"1","category":"Chloting"},{"id":"2","category":"Shoes"},{"id":"3","category":"Jewelry and Watches"},{"id":"4","category":"Accessories"}]


    ];

    $.each(results[0],function(k,v)
           {
               //alert(k+' '+v.id);
               //alert(v.id+' '+v.category);
               d[v.id]=v.category;    
           });
  alert(JSON.stringify(d));
    $("#output").html(JSON.stringify(d));
});

http://jsfiddle.net/vAVQk/

  • 0
    Я получаю неопределенный в консоли журнала. Я передал [itemData.id] вместо [i] и data [0] вместо data только в каждой функции
  • 0
    Вы проверили демоверсию jsfiddle? jsfiddle.net/vAVQk
0
var jsondata=[{"id":"1","category":"Chloting"},{"id":"2","category":"Shoes"},{"id":"3","category":"Jewelry and Watches"},{"id":"4","category":"Accessories"}];
var categories={};

$.each( jsondata, function( i, itemData ) {

                   categories[itemData.id] = itemData.category;

            });
console.log(categories);

DEMO FIDDLE

Ещё вопросы

Сообщество Overcoder
Наверх
Меню