2011-03-01 70 views
7

我想對像執行jQuery的每個功能的陣列:

"RelatedDoc": [ 
    { 
     "Id": "test", 
     "Number": "26262316" 
    } 
], 

這是一個大的JSON對象的一部分。到目前爲止,我有:

$.each($('#panel_MRD').data('obj'), function (key,value) { 
    $('select.mrdDisplayBox').addOption(key, value, false); 
}); 

我試圖去顯示「ID - 號」 - 選擇任何想法​​?以上顯示但不是正確的格式。

回答

24
$.each(largeJSONobject.ReleatedDoc, function (index,value) { 
    $('select.mrdDisplayBox').addOption(value.Id, value.Id + ' - ' + value.Number, false); 
}); 

你的價值是與陣列的單個元素:{ID: '',編號: ''}

文檔是在這裏:http://api.jquery.com/jQuery.each/

+0

我嘗試這一點,但沒有似乎爲我工作。我正在瀏覽文檔。謝謝你。 – Coughlin 2011-03-01 16:20:45

0

選項1(這裏使用了key作爲選項「ID」即1,2,3等):

$.each($('#panel_MRD').data('obj'), function (key,value) { 
    $('select.mrdDisplayBox').addOption(key, value.Id + ' - ' + value.Number, false); 
}); 

還沒有測試過,所以可能衝上去的答案。

- 當我意識到有潛在的2個值可以用作選項'id',無論是鍵還是值。

選項2(這使用value.Number的選項 '身份證',即26262316):

$.each($('#panel_MRD').data('obj'), function (key,value) { 
    $('select.mrdDisplayBox').addOption(value.Number, value.Id + ' - ' + value.Number, false); 
}); 

將停止現在想... :-)

3
$.each($('#panel_MRD').data('obj'), function (key,value) { 
    $('select.mrdDisplayBox').addOption(value.Id, value.Id + ' - ' + value.Number, false); 
}); 
+0

與螢火蟲一起運行,效果很好。 – Coughlin 2011-03-01 16:22:53

3

這裏是我的問題和我解決了什麼。 使用螢火蟲。 這是Array對象。這是用來創建四個複選框。

[ 
    {"datamet":"1","vchAmenityName":"TV"}, 
    {"datamet":"2","vchAmenityName":"Cable TV"}, 
    {"datamet":"5","vchAmenityName":"Internet"}, 
    {"datamet":"7","vchAmenityName":"Air Conditioning"} 
] 

<input type="checkbox" value="1" id="datamet1" /> 
<input type="checkbox" value="2" id="datamet2" /> 
<input type="checkbox" value="5" id="datamet5" /> 
<input type="checkbox" value="7" id="datamet7" /> 

我必須先找到它。是指以檢查它裏面的元素像下面 [{"datamet":"2"}]

爲此,我也下..我得到了問題就迎刃而解了

$.each(result, function(idx, obj){ 
    $.each(obj, function(key, value){ 
     console.log(key + ": " + value); 
    }); 
});