2012-02-13 124 views
0

我需要知道如何使用JSON對象填充下拉列表。 使用php將json發送到客戶端。客戶端使用ajax捕獲json數據。 我使用下面的代碼來檢查我剛剛從服務器收到的內容。使用json填充下拉列表

var test = xmlhttp.responseText; 
    alert(test); 

結果向我演示了..如下...

{"2":"pricelist.xml","3":"camera.xml", "4":"cd.xml","5":"data.xml"} 

我究竟做的是..我已經設置了一個XML文件服務器上的即時通訊使用PHP和我閱讀這些文件名使用json_encode將其轉換爲json對象,然後發送給客戶端使用從服務器發送的json數據填充下拉列表。我在接收客戶端的json數據時沒有問題,正如我上面所測試的那樣。我需要知道我怎麼使用上面的JSON數據

+1

填充數據這應有助於:http://stackoverflow.com/questions/5155467/auto-populating-select-boxes-using-jquery-and-ajax-not-working-in-anything-new – sikander 2012-02-13 17:58:27

回答

1

你的HTML

<select id="myselect"> 
</select> 

的JavaScript(使用jQuery

var json={} // Populate this json object 
$.each(json, function(key, value){ 
    $('#myselect').append("<option value='"+key+"'>"+value+"</option>"); 
}); 
+0

我試過上面的代碼。它似乎並沒有工作..這裏是我的代碼,我從服務器捕獲json obj。 'xmlhttp.onreadystatechange =函數() \t \t \t \t { \t \t \t \t \t如果(xmlhttp.readyState == 4 && xmlhttp.status == 200) \t \t \t \t \t { \t \t \t \t \t \t var test = xmlhttp.responseText; \t \t \t \t \t \t AddFiles(test); \t \t \t \t} \t \t \t \t}'我已經放置在AddFiles函數內我們的代碼。 – 2012-02-13 18:45:35

+0

你在頁面上包含了jQuery嗎?把這個標籤放在你的頭部,爲了安全起見,使這個標籤成爲第一個標籤。 '' – 2012-02-13 18:56:29

+0

對不起,我多次編輯以爲我這次得到了正確的答案:P。還有一點需要注意的是,在第三行中請確保通過id引用您的選擇。根據這個我已經更新了上面的答案。 – 2012-02-13 19:02:48