我需要你的幫助與阿賈克斯選擇框請。兩個選擇框與阿賈克斯
我有2個selectboxs:
區域
城市
當我選擇區域在城市中選擇框的變化選項accourding我選擇的區域。
它的工作正常,但是當我加載頁面(即ie:編輯數據)時,我沒有看到正確的城市(selectbox指針站在列表中的第一個城市,贊同我之前選擇的DB區域)。
我需要改變什麼?
感謝
的客戶端站點:
<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;
一切似乎都很好。嘗試通過ajax調用上方的'console.log(areaID)'來檢查您傳遞的areaID的值。 –
我也同意@OptimusPrime。 –
@OptimusPrime - 我錯過了當我加載頁面時呼叫正確城市的部分... – Roi