2011-10-26 194 views

回答

1

其基本思想是將該數據提交給服務器(通過POST返回或AJAX),然後用數據進行響應。

<select id="mySel" onChange="sendData()"> 

我所做的有添加了javascript函數被調用每一個下拉值已更改時間。

function sendData() { 
    $.post("processData.php", {selected: $(this).val()}, updateData(data)); 
} 

這是我爲select onChange事件寫的函數的骨架。我在這裏跳過了一兩步,並使用jQuery幫助創建一個AJAX請求回到服務器。我會打電話給我的PHP腳本processData.php來幫助處理選擇哪個元素。 {}包含我想要發送給服務器的數據,在這種情況下是選定的值。最後,我從服務器獲取數據後該怎麼做。

現在我將處於我的php文件並能夠處理我接收的數據並運行我的查詢以獲取新數據。一旦完成,我只需json_encode的數據,並與它作出迴應。

現在回到javascript世界,我的UpdateData函數被自動調用並傳遞了json數據。

function updateData(data) { 
    var select = '<select name="sel2">'; 
    $().each(data, function(index, val){ 
     select += '<option name="'+ index+ '">'+ value+ '</option>'; 
    }); 
    $("#mySel").parent.append(select); 
} 

這將允許我從返回的數據生成一個新的選擇列表(假設json中的鍵/值配對數組)。

我沒有真正測試過任何代碼,它的設計更像是指南和僞代碼。

0

當用戶選擇從一個select元素的值,發送一個XMLHttpRequest來獲取數據來填充第二選擇元素。

相關問題