动态下拉从数据库中拉出但选项值不起作用

时间:2011-07-29 01:02:42

标签: php database dynamic menu drop-down-menu

我正在尝试创建一个动态下拉菜单,该菜单从数据库中提取城市名称(并在我添加新城市时自动更新),然后在选择时转到该城市页面。下拉菜单有效,但在选择城市时没有任何反应。不知道我哪里出错了。这就是我所拥有的

 <?php mysql_select_db ("db_name");
     echo "<select name=database><option value='.'>Select Your City</option>";
     $result = mysql_query ("select DISTINCTROW city_head from database order by city_head");
     while ($city_head=mysql_fetch_assoc($database)) {
     echo "<option value="#CityIDPage">".$city_head[city_head]."</option>\n"; }
     echo "</select><p>";

&GT;

1 个答案:

答案 0 :(得分:0)

<select>元素在选择新选项时不会固有地更改页面位置。

您可以添加此功能 - 通过将以下属性添加到value,将页面位置更改为所选选项的select值:

onchange="window.location.href=this.options
[this.selectedIndex].value"

即,

<?php 
    mysql_select_db ("db_name");
    echo "<select name=database onchange=\"window.location.href=this.options
[this.selectedIndex].value\"><option value='.'>Select Your City</option>";
    $result = mysql_query ("select DISTINCTROW city_head from database order by city_head");
    while ($city_head=mysql_fetch_assoc($database)) {
        echo "<option value="#CityIDPage">".$city_head[city_head]."</option>\n";
    }
    echo "</select><p>";

请注意,您必须为每个城市适当设置value;我不知道你的数据库架构,所以我不能在那里建议你。