两个带ajax的选择框

时间:2013-10-12 08:24:12

标签: jquery ajax

请在ajax选择框中提供帮助。

我有两个选择框:

  1. 区域

  2. 城市

  3. 当我选择区域时,CITIES选择框中的选项会根据我选择的区域进行更改。

    它的工作正常,但是当我加载页面时(对于ie:编辑数据)我看不到正确的城市(选择框指针位于列表中的第一个城市,这是我之前选择的数据库区域)

    我需要改变什么?

    由于

    客户端网站:

    <p><label>Area</label> 
        <select name='areaID' id='areaID'>
            <?PHP
            $query = mysql_query("SELECT * FROM `areas` ORDER BY id ASC "); 
            while($index = mysql_fetch_array($query)) 
            {
                $db_area_id = $index['id'];
                $db_area_name = $index['name'];
                if ($db_area_id == $userDetails['areaID'])
                    echo "<option value='$db_area_id' selected>$db_area_name</option>";         
                else    
                    echo "<option value='$db_area_id'>$db_area_name</option>";
            }
            ?>
        </select><span>*</span>
    </p>
    
    <p><label>City</label>
        <select id='cityID' name='cityID'>  </select>
    </p>
    
    
    <script>
    $(function () {
        function updateCitySelectBox() {
            var areaID = $('#areaID').val();
            $('#cityID').load('ajax/getCities.php?areaID=' + areaID);
    
            return false;
        }
    
        updateCitySelectBox();
        $('#areaID').change(updateCitySelectBox);
    });
    </script>
    

    服务器端:

    $areaID = (int) $_GET['areaID'];
    
    $second_option = "";
    
    $query2 = mysql_query("SELECT * FROM `cities` WHERE area_id = $areaID ORDER BY id ASC");
    while($index = mysql_fetch_array($query2)) 
    {
        $id = $index['id'];
        $name  = $index['name'];
        $second_option .= "<option value='$id'>$name</option>";
    
    }
    echo $second_option;
    

1 个答案:

答案 0 :(得分:0)

尝试添加以下代码行。你需要在窗口加载时调用该函数。

$(document).ready(function(){
    window.load = updateCitySelectBox();
});