如何使2个下拉列表与PHP/HTML中其他页面的链接一起工作?

如何使2个下拉列表与PHP/HTML中其他页面的链接一起工作?,php,javascript,html,Php,Javascript,Html,我还是PHP的初学者。我对下拉列表和链接有问题。我希望能够在下拉菜单中选择一个选项,并将其转到指定页面。由于某些原因,只有第二个下拉菜单的链接。(市政当局)将通过链接到特定市政当局页面正确工作。犯罪下拉菜单将不会链接到特定犯罪页面。我已经包括了犯罪代码下拉列表和市政代码下拉列表。我还包括下面的脚本 最终我的问题是,为什么这两个下拉列表都不能正确地使用链接 <script language="JavaScript" type="text/javascript"> functi

我还是PHP的初学者。我对下拉列表和链接有问题。我希望能够在下拉菜单中选择一个选项,并将其转到指定页面。由于某些原因,只有第二个下拉菜单的链接。(市政当局)将通过链接到特定市政当局页面正确工作。犯罪下拉菜单将不会链接到特定犯罪页面。我已经包括了犯罪代码下拉列表和市政代码下拉列表。我还包括下面的脚本

最终我的问题是,为什么这两个下拉列表都不能正确地使用链接

<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>

功能页(链接){
如果(document.dropdown.theLink.value!=“”){
location.href=document.dropdown.theLink.value;
}
}
选择与该团伙有关的犯罪


选择与该团伙有关的自治市
我认为更好的解决方案是将select元素的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')">


在第一种情况下,您对gopage的调用是不正确的,应该是gopage(此)而不是gopage(链接)现在想想,我认为您出现此问题的原因是因为两个下拉菜单都有相同的名称(链接),这会混淆javascript,因为它不知道要影响哪个下拉菜单。尝试为两个下拉列表指定不同的名称