2012-06-20 61 views
0

PHP文件中有兩個HTML「select」元素,比如說list1和list2。我希望在列表1的onChange事件中使用Ajax調用PHP文件來更改列表2的內容(顯示文本和值)。 list2的內容將來自MySQL數據庫表。怎麼做 ?如何在Ajax中更改HTML「select」元素的內容?

這裏是我的嘗試:

<script language="javascript"> 
    function loadObjectsFromTypetache(typeTache) 
    { 
     var xmlhttp; 
     if (window.XMLHttpRequest) 
     {// code for IE7+, Firefox, Chrome, Opera, Safari 
      xmlhttp=new XMLHttpRequest(); 
     } 
     else 
     {// code for IE6, IE5 
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
     } 
     xmlhttp.onreadystatechange=function() 
     { 
      if (xmlhttp.readyState==4 && xmlhttp.status==200) 
      { 
       document.getElementById("obs_id_obj").innerHTML=xmlhttp.responseText; 
      } 
     } 
     xmlhttp.open("GET","ajaxRemplirObjetObsrv.php?type_tache="+typeTache,true); 
     xmlhttp.send(); 
    } 
    function Annuler() 
    { 
     // Retour à la liste des enregistrements 
     document.location = "<?php echo PAGE_ADMIN; ?>?action=AdminGererObservation"; 
    } 
</script> 
... 
<select id="typ_tache_code" name="typ_tache_code" onChange="loadObjectsFromTypetache(document.form.typ_tache_code.value)"> // this is list1 
<option value="" ><?php echo _getText('admin.obsrv.selectionnerTypeTache'); ?></option> 
<?php 

    for ($u=0; $u < $data['listTypeTache']['cnt']; $u++) 
    { 
?> 
<option value = "<?php echo $data['listTypeTache'][$u]['typ_tache_code']; ?>"><?php echo $data['listTypeTache'][$u]['typ_tache_lib']; ?></option> 
<?php 
    } 
?> 
</select> 
<select id="obs_id_obj" name="obs_id_obj">... // this is list2 

那麼在阿賈克斯稱爲PHP的URL文件寫?

+6

你嘗試過什麼? – lanzz

+0

它在url頁面會返回我有問題的回覆! – pheromix

+0

嘗試'鏈式選擇'jquery插件:http://www.appelsiini.net/2010/jquery-chained-selects –

回答

0

酪氨酸這

15536​​

/URL檢索:

<option value="1">Second</option> 
<option value="2">Second</option> 
+0

你可以正確寫入嗎? – pheromix