我正在尝试在php中创建两个相关的选择框。但它无法正常工作..我正在尝试从我的表名地址中检索数据,其中包含两列区< / strong>和地方 ..fro 地区第一个选择框正在运行,但由于第二个选择框依赖于第一个选择框,因此必须存在导致第二个选择框的任何问题选择框无法正常工作。因此,它不会检索任何数据..
这是我的代码页面practice.php
'supportsCredentials' => true,
'allowedOrigins' => ["localhost:4200"],
'allowedHeaders' => ['*'],
'allowedMethods' => ['*'],
'exposedHeaders' => [],
'maxAge' => 0,
这是我在页面fetch_sate.php上的PHP代码
php artisan config:clear
答案 0 :(得分:0)
你应该改变
$('#place').html(data);
到
$('#place').find('option').remove().append(data);
将删除所有现有选项并添加新选项。您还需要更改此行:
$output = '<option value="'.$row["place"].'">'.$row["place"].'</option>';
到此:
$output .= '<option value="'.$row["place"].'">'.$row["place"].'</option>';
这样您就不会覆盖除最后一个选项之外的所有选项。
答案 1 :(得分:0)
如果你想使用post,那么参数是类型而不是方法
尝试使用如下的onchange事件:
在practice.php中:
<select name="district" id="district" onchange="get_state(this.value);">
<option value="">Select District</option>
<?php echo load_district(); ?>
</select>
更正ajax语法如下:
<script>
function get_state(district_id)
{
$.ajax({
url:"fetch_state.php",
type:"POST",
data:{districtID:district_id},
success:function(data){
$('#place').html(data);
}
});
}
</script>
答案 2 :(得分:0)
请在选项值中传递地区ID:
while($row = mysqli_fetch_array($result)){
$output .= '<option
value="'.$row["district"].'">'.$row["district"].'</option>';
}