【发布时间】:2020-02-23 13:09:52
【问题描述】:
在输入字段中显示 ajax 响应,但它不起作用
HTML 代码:
<html>
<select name="class_id" class="form-control" data-validate="required" id="class_id"
data-message-required="<?php echo get_phrase('value_required');?>"
onchange="return et_student_fees(this.value)">
<div class="form-group">
<input id="admission" value="" type="text" class="form-control" name="admission-fee" >
<input id="tuition" type="text" class="form-control" name="tuition-fee" value="">
<input id="exam" type="text" class="form-control" name="exam-fee" value=""></div>
</html>
JS:
<script type="text/JavaScript">
function get_student_fees(class_id)
{
$.ajax({
url: '<?php echo base_url();?>index.php?admin/get_student_fees/' + class_id ,
success: function(response)
{
var len = response.length;
if(len > 0){
// Read values
$('#admission').val(response.admissionfee);
$('#tution').text(response.tutionfee);
$('#exam').text(response.examfee);
}else{
$('#admission').text('');
$('#tution').text('');
$('#exam').text('');
}
}
});
}
控制器:
function get_student_fees($class_id)
{
$fees = $this->db->get_where('fees' , array('class_id' => $class_id
))->result_array();
foreach ($fees as $row) {
$response = array();
$data['admissionfee'] = $row['admissionfee'];
$data['tutionfee'] = $row['tutionfee'];
$data['examfee'] = $row['examfee'];
array_push($response , $data);
}
echo json_encode($response);
}
使用 ajax 从控制器获取值,谁能帮我返回 Multiples 值并将这些值显示到文本字段中
【问题讨论】:
-
您的输入 ID 是
tuition,而您在 ajax 代码中拼错了它,即:#tution,请相应地更改它。另外,请检查response中的内容。 -
改变了这一点,response.admissionfee 未定义,但 response 具有所有值
-
此时请检查您的回调函数名称
onchange="return et_student_fees(this.value),因为您的函数名称是get_student_fees(),但您将其称为et_student_fees() -
已更正,但问题依旧。
标签: javascript php jquery codeigniter