我有这个表格:
<form method = "POST" action = "<?php echo base_url('Usercontroller/insert') ?>">
<div class="form-group">
<label for="exampleInputEmail1">Apartament</label>
<select name ="txtApartament1" class="form-control">
<?php foreach($getEntry as $value) { ?>
<option><?php echo $value->apartament ?></option>
<?php }?>
</select>
</div>
<div class="form-group">
<label for="exampleInputPassword1">Nume</label>
<input type="text" name ="txtNume" class="form-control" id="exampleInputPassword1" placeholder="Nume">
</div>
<div class="form-group">
<label for="exampleInputPassword1">Persoane</label>
<input type="text" name ="txtPersoane" class="form-control" id="exampleInputPassword1" placeholder="Personae">
</div>
<div class="form-group">
<label for="exampleInputPassword1">Mp</label>
<input type="text" name ="txtMp" class="form-control" id="exampleInputPassword1" placeholder="Mp">
</div>
<div class="form-group">
<label for="exampleInputPassword1">Comentariu</label>
<input type="text" name ="txtComentariu" class="form-control" id="exampleInputPassword1" placeholder="Comentariu">
</div>
<button type="submit" class="btn btn-default">Salveaza</button>
</form>
并且基于从Apartament 字段的下拉列表中选择的选项,我想用我从数据库中提取的值填充另一个字段,为了获得它,我制作了一个ajax 来发送所选的选项,如下所示:
$(document).ready(function(){
$( ".form-control" ).change(function() {
var apartament = $(this).val();
console.log(apartament);
$.ajax({
url: 'Usercontroller/apartamentSelection',
data: apartament,
type: 'post'
}).done(function(responseData) {
console.log('Done: ', responseData);
}).fail(function() {
console.log('Failed');
});
});
});
在我的控制器中,我返回带有如下数据的数组:
public function apartamentSelection() {
$data= $this->input->post(null, true);
$apartamentulAles=(array_keys($data)[0]);
$query = $this->db->query("SELECT * FROM membri WHERE apartament = '".$apartamentulAles."' ");
$result = $query->result_array();
print_r($result);
}
我对所选选项的响应在 done 函数中看起来像这样:
Done: Array
(
[0] => Array
(
[id] => 5
[apartament] => 5
[per_id] => 1
[nume] => Ion
[persoane] => 4
[mp] => 32
[comentariu] => ddddd
)
)
我如何从我的响应数组中获取值并填充上面的表单,在数字字段中我应该得到 Ion,在 Persoane 4 中等等?
您应该将 json 响应发送回 ajax 调用。
echo json_encode($result[0]);
dataType='JSON'
在$.ajax({})
调用中使用属性然后在你的 ajax done 方法中获取响应数据变量中从 php 发送的响应
.done(function(responseData) {
$('#numeId').val(responseData.nume);
})
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句