2013-05-21 66 views
-2

我有3個下拉列表來填充從SQL數據庫使用PHP和JavaScript/AJAX。 第一個列表以填充選項開始,第二個列表根據選擇從數據庫填充。所有這些工作正常,我回應PHP的整個第二列表。 問題是:我不能得到第二個下拉框重複另一個「onchange」函數。嘗試了許多組合,但沒有運氣。第二個javasript函數屬於哪裏?在HTML或PHP?任何幫助將不勝感激。使用PHP填充多個下拉列表

HTML與第一javascript函數

<html> 
<head> 
<title>Insert Test</title> 

<script> 
function getdate(str){ 
    if (str==""){ 
     document.getElementById("dateinput").innerHTML=""; 
     return; 
    } 
    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("dateinput").innerHTML=xmlhttp.responseText; 
     } 
    } 
    xmlhttp.open("GET","test.php?q="+str,true); 
    xmlhttp.send(); 
} 
</script> 


</head> 
<body> 
<form id="book" name="book" action="unfinished.php" method="post"> 
    <p align="center"> 
    <select name="cityinput" id="cityinput" onchange="getdate(this.value)"> 
     <option value="0" selected>City</option> 
     <option value="1">Brisbane</option> 
     <option value="2">Sydney</option> 
     <option value="3">Melbourne</option> 
     <option value="4">Adelaide</option> 
     <option value="5">Perth</option> 
    </select> 
    </p> 
    <div id="dateinput"></div> 
    <p align="center"> 
    <input type="submit"> 
</form></p> 
</body> 
</html> 

php文件

<?php 
require'connect.php'; 
date_default_timezone_set('Australia/Sydney'); 

$q=$_GET["q"]; 
$sql="SELECT date AS date FROM schedule WHERE lounge = '".$q."' AND date >= NOW() AND date <= NOW() + INTERVAL 14 DAY 
ORDER BY date asc"; 

$result=mysql_query($sql); 
$num=mysql_numrows($result); 
$i=0; 
echo"<center><select name='dateinput' id='dateinput'></center>"; 

while ($i < $num) { 
    $datum=mysql_result($result,$i,"date"); 
    $day = date('l jS M', strtotime($datum)); 
    echo "<option value=$datum>$day</option>"; 
    $i++; 
} 

if (!mysql_query($query)){ 
    die('Error: ' . mysql_error()); 
} 
mysql_close(); 
?> 
+0

你可以使用jQuery嗎? –

+0

把函數放入html文件並將其調用寫入php(