2011-08-31 98 views
3

使用jQuery SelectBox plugin我試圖創建一個JSON對象看起來如下,其中'value''name'是對值的選擇框:如何遍歷並將值對添加到JSON對象?

'Opt Group 1': { 
    'value': 'name', 
    'value': 'name', 
    'value': 'name', 
    'value': 'name', 
    'value': 'name' 
}, 

所以,當我通過我的數據循環,我推更多的數據到數組的末尾。目前,以顯示'name'而已,我使用以下命令:

var jsonObj = []; 
for(var i=0; i<data.length; i++){ 
    jsonObj.push(data[i].name); 
} 
console.log(jsonObj); 

到目前爲止,據我所知,JavaScript的似乎不喜歡用變量標識符,即我不能做:jsonObj.push({data[i].id:data[i].name});

如何才能創建我需要的JSON對象,以便根據需要使選擇框工作?

回答

16

你在我認爲的數組和對象之間產生了很多混淆。你可以這樣做:

var jsonObj = {}; 
for(var i=0; i<data.length; i++){ 
    jsonObj[data[i].id] = data[i].name; 
} 

這樣你就具備擁有的屬性包含在「數據」和這些屬性的值相對名稱

+0

井「ID」的對象,你不錯誤的是我在數組和對象之間有很多混淆。謝謝,我會試一試。 –

+0

先生,你是個紳士。這是完美的。所以要確認,這只是一個JSON對象?字數組在這裏不算真正的數字嗎? –

+1

實際上它不是一個JSON對象,它是一個標準的JavaScript對象。在Javascript中有很多關於對象和數組的很好的文章,這是很正常的! :) –