我不知道我的代码有什么问题。调用该函数时,无法从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);
}
}
})
请帮助我。先感谢您。祝你有美好的一天!
答案 0 :(得分:0)
您应该在控制器的函数中回显$ result而不是返回值。
public function check_student_id($data){
$result = $this->page_model->check_id($data);
echo $result;
}