2015-08-28 137 views

回答

-1

首先,您需要創建數組對象。

  • 之後,您必須將數據循環並將其逐一存儲到數組對象中。

例子:

var categories = []; 
var jsonobj; 
$.getJSON('data.json', function(data) { 
    jsonobj = data; 
}); 
for (i in obj) { 
    var temp = []; 
    temp.push(obj[i].'jsondata'); 
} 

希望這是回答你的問題。你可以參考這個link

+0

與小提琴相比,上面的代碼是不完整的。 –

+0

@RickCalder:我同意瑞克。我只是將小提琴鏈接粘貼爲參考目的。不是爲了一個實際的答案。 – Henry

2
var items = []; 
$.getJson('data.json', function(data) { 
    $.each(data, function(index, value) { 
    items.push(value); 
    }) 
}) 

希望它會幫助你。

0

我想推薦你檢查你的json數據。用字符串的數組結構良好

一個JSON數據可能是:

["Hi", "Hello", "Test"] 

如果您需要幫助,以驗證您的JSON數據,你可以使用這個鏈接:http://pro.jsonlint.com/

關於您的問題,潘卡古普塔的回答是一個很好的選擇。

不要忘了在javascript語句的末尾使用分號。

var items = []; 
$.getJson("data.json", function(data) 
{ 
    $.each(data, function(index, value) 
    { 
     items.push(value); 
    }); 
}); 
0

1.You更換name.toString()data。然後它會工作。

var name = { 
    categories: [] 
}; 
$.getJSON('data.json', function(data) { 
    name.categories = data; 
}); 

2.也可以通過助手對象設置。 Helper.setArray(name.categories, data);而不是name.categories = data;。通常,我使用助手進行解析和其他目的。

var Helper = { 
    clearArray: function(arr) { 
    if (arr && Array.isArray(arr)) { 
     arr.length = 0; 
    } 
    }, 
    pushArray: function(arr1, arr2) { 
    if (arr1 && arr2 && Array.isArray(arr1)) { 
     arr1.push.apply(arr1, Array.isArray(arr2) ? arr2 : [arr2]); 
    } 
    }, 
    setArray: function(arr1, arr2) { 
    this.clearArray(arr1); 
    this.pushArray(arr1, arr2); 
    } 
}