我有 2 个下拉列表。第一个显示一个国家的地区,另一个显示所选州的每个城市。问题是,在我提交表单后,MySQL 数据库从第一个列表中获取所选区域的 ID,而第二个列表没有显示任何内容。我想让我的数据库接收正确的信息。地区名称和城市名称。
我怎样才能做到这一点?
我的 javascript 看起来像这样:
$(document).ready(function() {
$(".region").change(function() {`enter code here`
var id = $(this).val();
var dataString = 'id=' + id;
$.ajax({
type: "POST",
url: "ajax_city.php",
data: dataString,
cache: false,
success: function(html) {
$(".city").html(html);
}
});
});
});
我的section.php
脚本是:
<?php
<label>Country :</label> <select name="country" class="country">
<option selected="selected">--Select Region--</option>
<?php
$sql = mysql_query("SELECT id,region FROM regions ORDER BY region");
while ($row = mysql_fetch_array($sql)) {
$id = $row['id'];
$region = $row['region'];
echo '<option value="' . $id . '">' . $region . '</option>';
}
?>
</select> <br/><br/>
<label>City :</label> <select name="city" class="city">
<option selected="selected">--Select City--</option>
</select>
?>
该ajax_city.php
文件如下所示:
<?php
if($_POST['id']) {
$id = $_POST['id'];
$sql=mysql_query("SELECT DISTINCT city FROM CITY where id_city=$id order by city");
while($row = mysql_fetch_array($sql)) {
$id=$row['id'];
$data=$row['city'];
echo "<option value=$id>$data</option>";
}
}
?>
代码工作正常。但我无法弄清楚如何处理数据库。我想我必须更改 JavaScript 中的某些内容?
请问有什么帮助吗?