【发布时间】:2018-10-20 02:11:36
【问题描述】:
我是 javascript 的初学者。我有一个依赖下拉列表,我的问题是当有人在编辑时在依赖下拉列表中,而编辑下拉列表时不会自动选择。这是我的表单代码:
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="prov_id">Provinsi
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<?php
$additional_dd_code = 'id="reg_province" class="select2_single form-control col-md-7 col-xs-12" tabindex="-1"';
echo form_dropdown('prov_id', $prov_options, $prov_id, $additional_dd_code);
?>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="city_id">Kota/Kabupaten
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<select name="city_id" id="reg_city" class="select2_single form-control col-md-7 col-xs-12" tabindex="-1" >
<option value=""></option>
</select>
</div>
</div>
这是我的 javascript:
$(document).ready(function () {
$('#reg_province').change(function () {
var prov_id = $('#reg_province').val();
if (prov_id != '') {
$.ajax({
url: "<?= base_url() ?>reg_city/fetch_city",
method: "POST",
data: {prov_id: prov_id},
success: function (data) {
$('#reg_city').html(data);
}
})
}
})
})
这是我用于更新依赖下拉列表的控制器:
function fetch_city() {
$prov_id = $this->input->post('prov_id', TRUE);
if ($prov_id == TRUE) {
$query = $this->get_where_custom_order_by('prov_id', $prov_id, 'city_name');
foreach ($query->result() as $item) {
echo '<option value="'.$item->city_id.'">'.$item->city_name.'</option>>';
}
}
}
在相关下拉列表中,我遇到的唯一问题是编辑时。它应该已经显示了选定的 id。但实际上,它没有显示任何数据。那么,我的代码应该如何?
【问题讨论】:
-
尝试在编辑表单中调用
$('#reg_province').trigger('change') -
我应该把代码放在哪里?是否替换$('#reg_province').change(function () {}?如果是,如何实现?
-
在
$('#reg_province').change(function () {...结束后添加到$(document).ready(function () {... -
它有效。非常感谢,对我帮助很大。但是,我有下一个问题:如何选择该选项?
-
好的。让我也解决这个问题
标签: javascript php codeigniter codeigniter-3 hmvc