selectbox不会因ajax而改变

selectbox不会因ajax而改变,ajax,Ajax,我有ajax代码,根据所选区域在选择框中显示citiesin的名称: <?PHP if ($_POST) { ?> $(document).ready(function(){ $('#areaID').filter(function(){ var areaID=$('#areaID').val(); var cityID=<?PHP echo $cityID ?>; $('#c

我有ajax代码,根据所选区域在选择框中显示citiesin的名称:

<?PHP if ($_POST) { ?>
    $(document).ready(function(){
        $('#areaID').filter(function(){
            var areaID=$('#areaID').val();
            var cityID=<?PHP echo $cityID ?>;
            $('#cityID').load('js/ajax/getCities.php?areaID=' + areaID+'&cityID=' + cityID);
            return false;
        });
    }); 
<?PHP }else { ?>

$(function () {
    function updateCitySelectBox() {
        var areaID = $('#areaID').val();
        $('#cityID').load('js/ajax/getCities.php?areaID=' + areaID);

        return false;
    }

    updateCitySelectBox();
    $('#areaID').change(updateCitySelectBox);
});
<?PHP } ?>
问题是-在用户提交表单并出现错误后,即-忘记填写某些字段,用户可以更改区域,但城市选择框不会根据新区域进行更改

代码有什么问题

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

您从ajax调用中收到了什么HTML代码?在city selectbox中,我看到了与我之前选择的area值相同的值。但当我选择新的区域时,城市价值不会改变。我只是在第一次表单提交之后才开始讨论,但是ajax调用会给您一些响应,您能发布您从该调用中得到的响应吗?