【发布时间】:2014-12-18 13:06:10
【问题描述】:
我是 Ajax 的新手并且很困惑。问题是 ajax 重新加载页面。 url中提到的函数将数据插入数据库。但页面重新加载。我猜 URL 不起作用,但我不确定。
这是我的控制器功能
public function insert_student_fee_payment()
{
$std_code=$this->input->post('std_code');
$total_fee=$this->input->post('total_fee');
$payable_fee=$this->input->post('payable_fee');
$date=date('Y m d');
$class_detail=$this->db->select('class.class_year,class.class_semester')
->join('class','class_student.class_id=class.class_id','LEFT')
->where('class_student.student_id',$std_code)
->where('class_student.class_student_status',2)
->limit(1)
->get('class_student')
->result();
if(count($class_detail)>0)
{
foreach($class_detail as $cd)
{
$year=$cd->class_year;
$semester=$cd->class_semester;
}
}
$data=array(
'std_code'=>$std_code,
'year'=>$year,
'semester'=>$semester,
'total_fee'=>$total_fee,
'payable_fee'=>$payable_fee,
'date'=>$date,
'status'=>2
);
if($this->db->insert('student_fees',$data))
{
echo '1';
}
}
这是我的 Ajax 代码
<script type="text/javascript">
$(document).ready(function(){
$('#insert_fee_payment').click(function(){
var std_code=$('#std_code').text();
var total_fee=$('#total_fee').text().split(' ');
var payable_fee=$('#payable_fee').text().split(' ');
total_fee=total_fee[0];
payable_fee=payable_fee[0];
var data='std_code='+std_code+'&total_fee='+total_fee+'&payable_fee='+payable_fee;
$.ajax({
url: '<?php echo base_url()."index.php/finance/insert_student_fee_payment;?>',
type: 'POST',
data: data,
success: function(response)
{
alert(response);
},
error: function(response,status,err)
{
alert(err.message);
}
});
});
});
大家帮忙
【问题讨论】:
-
尝试更改 ajax 请求中的 url:- url: 'finance/insert_student_fee_payment'
-
尝试了可能的变化,但没有奏效。
-
尝试通过提供可以提出请求的核心 url 来测试它?你可以使用 base_url() 吗?
-
是的,这里是 URL:'',
-
您可以尝试从您的网址中删除 index.php 吗?
标签: javascript php jquery ajax