我想從我的數據庫中獲取數據到我的視圖在codeigniter中使用ajax,但我無法讓它工作。我認爲將grade_id傳遞給我的模型函數會出現問題。從代碼數據庫中使用AJAX獲取數據
AJAX:
<script type="text/javascript">
$(document).ready(function(){
$('#grades').change(function(){
$("#classes > option").remove();
var grade_id = $('#grades').val();
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>index.php/login/get_classes/"+grade_id,
data: {gradeid:grade_id},
success: function(classes)
{
$.each(classes,function(id,name)
{
var opt = $('<option />');
opt.val(id);
opt.text(name);
$('#classes').append(opt);
});
}
});
});
});
</script>
控制器:
function get_classes($gradeid)
{
$this->load->model('school_info_model');
header('Content-type: application/json');
if ($query = $this->school_info_model->get_all_classes($gradeid))
{
echo json_encode($query);
} else {
redirect('login/loginform');
}
}
MODEL:
function get_all_classes($gradeid)
{
$this->db->where('grade_id', $gradeid);
$query = $this->db->get('classes');
if($query->result()){
$result = $query->result();
foreach($result as $row)
{
$options[$row->id] = $row->name;
}
return $options;
}
}
編輯:
我更新了我的代碼現在正在工作,除了2件事情,我不斷收到一個錯誤。
錯誤:
A PHP Error was encountered
Severity: Warning
Message: Invalid argument supplied for foreach()
Filename: helpers/form_helper.php
Line Number: 331
,當我加載頁面,第一次上課的輸入欄是空的,因爲它只能激活AJAX如果等級變化的值。
它返回什麼錯誤? – WebNovice