2011-05-08 26 views
0

我仍然是PHP的初學者。我遇到了下拉式問題和鏈接問題。我希望能夠在下拉菜單中選擇一個選項並轉到指定頁面。出於某種原因,只有第二個下拉菜單的鏈接。 (MUNICIPALITIES)將通過鏈接到特定的市政頁面正確工作。犯罪下拉菜單不會鏈接到特定的犯罪頁面。我已經列入了犯罪下降和市鎮下降的代碼。我還包括下面的腳本。如何使2下拉菜單鏈接到PHP/HTML中的其他頁面?

最終我的問題是爲什麼不能正常使用鏈接下拉功能?

<script language="JavaScript" type="text/javascript"> 

    function gopage(theLink) { 
     if (document.dropdown.theLink.value != "") { 
      location.href = document.dropdown.theLink.value; 
     } 
    } 

</script> 

<form name="dropdown"> 
    <select name="theLink" onchange="gopage(theLink)"> 
     <option value="ALL">Choose Crime associated with the Gang</option> 
     <?php 
     //echo 'NOWWWWWWWWWWWWWWWWWWWWWW'; 
     if ($length3 <> 0) { 
      for ($m = 0; $m < $length3; $m++) { 
       $rows = $resultset3[$m][crime_name]; 
       $trackchoices = $rows; 

       $options2 = "<option value=\"crimesmain.php?crime=$trackchoices\">$trackchoices</option>"; 
       echo "$options2"; 
      } 
     } 
     else if ($length3 == 0) { 
      $trackanswer = "NO CRIMES"; 
      $options5 = "<option value=\"$trackanswer\">$trackanswer</option>"; 
      echo "$options5"; 
     } 
     ?> 
    </select> 
</form> 

<br> 
<br> 

<form name="dropdown"> 
    <select name="theLink" onchange="gopage(this)"> 
     <option value="ALL">Choose Municipality associated with the Gang</option> 
     <?php 
     if ($length12 <> 0) { 
      for ($q = 0; $q < $length12; $q++) { 
       $rows2 = $resultset6[$q][municipality_name]; 
       $trackchoices2 = $rows2; 
       //try 

       $options3 = "<option value=\"municipalitymain.php?mun=$trackchoices2\">$trackchoices2</option>"; 
       //echo "<a href='municipalitymain.php?mun=$options3'>"; 
       echo "$options3"; 
      } 
     } 
     else if ($length12 == 0) { 
      $trackanswer = "NO MUNICIPALITY"; 
      $options6 = "<option value=\"$trackanswer\">$trackanswer</option>"; 
      echo "$options6"; 
     } 
     ?> 
    </select> 
</form> 
+0

您打給gopage的電話在第一種情況下是不正確的,它應該是gopage(this)不是gopage(theLink) – boug 2011-05-08 19:46:31

+0

現在想起它我認爲你有這個問題的原因是因爲兩個下拉列表都有相同的名稱(theLink),這會混淆javascript它不知道哪個下拉影響。嘗試給兩個下拉不同的名字 – boug 2011-05-08 20:07:28

回答

1

我想一個更好的解決辦法是通過選擇元素的ID gopage所以你的函數看起來像這樣

function gopage(elId) 
{ 
    if (document.getElementById(elId).value != "") { 
     location.href = document.getElementById(elId).value; 
    } 
} 

第一個下拉

<select name="theLink" id="crime" onchange="gopage('crime')"> 

第二個下拉

<select name="theLink2" id="muni" onchange="gopage('muni')"> 
相關問題