我不知道我的代码出了什么问题。当我调用函数时,我无法从CI_Controller获得预期的输出。我怀疑我的CI_Controller没有向Ajax函数返回任何值。
这是我的CI_Controller功能
public function check_student_id($data){
$result = $this->page_model->check_id($data);
return $result;
}
然后是CI_Model函数
public function check_id($data){
$this->db->where('student_id', $data);
$result = $this->db->count_all_results('users');
if($result > 0){
return true;
}
else{
return false;
}
}
最后,Ajax函数
$.ajax({
url: $('#base_url')+"pages/check_student_id/"+student_id,
method: "POST",
data: {'student_id':student_id},
success: function(data){
if(data == true){
$('#student_id_error_message').show();
$('student_id_error_message').text('Student ID has been already registered.');
$('#student_id_error_message').addClass('text-danger font-italic my-0');
}
else{
$('#registerForm').hide(600);
$('#registerSuccess').text('You have successfully registered!');
$('#registerSuccess').addClass('text-success py-3');
$('#registerSuccess').show(600);
}
}
})
请帮帮我。提前谢谢你。祝你今天愉快!
您应该在控制器的函数中回显$result,而不是返回。
public function check_student_id($data){
$result = $this->page_model->check_id($data);
echo $result;
}