2012-02-17 100 views
1

這是返回的JSON數據:我需要把它放到下拉列表中選擇列表JSON數據到下拉列表中選擇使用jQuery

({"Data":{"Alabama":"AL","Alaska":"AK","Arizona":"AZ","Arkansas":"AR","California":"CA","Colorado":"CO","Connecticutt":"CT","Delaware":"DE","Florida":"FL","Georgia":"GA","Hawaii":"HI","Idaho":"ID","Illinois":"IL","Indiana":"IN","Iowa":"IA","Kansas":"KS","Kentucky":"KY","Louisiana":"LA","Maine":"ME","Massachusetts":"MA","Michigan":"MI"}}) 

$.getJSON(url + 'GetStateList?jsoncallback=?', 
    function (json) { 
     if (!jQuery.isEmptyObject(json.Data)) { 
      //need to write logic 
     } 
    }); 

任何人都可以幫我解決這個問題嗎?

+0

相關:http://stackoverflow.com/questions/94674/jquery-create-select-list -options-from-json-not-occurrence-as-advertised – JMax 2012-02-17 16:02:01

+0

http://stackoverflow.com/questions/317095/how-do-i-add-options-to-a-dropdownlist-using-jquery – Fox32 2012-02-17 16:02:21

回答

2

這只是一個簡單的例子,隨意使用它作爲一個起點:

<HTML> 
<HEAD> 
    <TITLE>Test Example</TITLE> 
</HEAD> 
<BODY> 
    <form> 
     <select id="sel" /> 

    <script> 
    function fill() { 
     var obj = ({"Data":{"Alabama":"AL","Alaska":"AK","Arizona":"AZ","Arkansas":"AR","California":"CA","Colorado":"CO","Connecticutt":"CT","Delaware":"DE","Florida":"FL","Georgia":"GA","Hawaii":"HI","Idaho":"ID","Illinois":"IL","Indiana":"IN","Iowa":"IA","Kansas":"KS","Kentucky":"KY","Louisiana":"LA","Maine":"ME","Massachusetts":"MA","Michigan":"MI"}}); 
     var s = document.getElementById('sel'); 
     var i = 0; 
     for(var propertyName in obj.Data) { 
     sel.options[i++] = new Option(propertyName, obj.Data[propertyName], true, false); 
    } 
    } 

    fill(); 
    </script> 
    </form> 
</BODY> 
</HTML> 
+0

感謝您的回答! – Krishh 2012-02-17 16:42:43

3
var data = 'jsonstring', i, select = $('select'); 

for(i in data){ 

    select.append($('<option value="' + data[i][1] + '">' + data[i][0] + '</option>')); 

} 
+0

只有結果返回狀態名稱和狀態的第一個字母 – Krishh 2012-02-17 16:43:21