我是codeigniter的新手并且正在实施ajax操作。我的观点页面是:
<p>
<?php echo 'Customer Name :' ;?>
<?php
echo form_dropdown('loan_customer_id', $loan_cust,'','class="loancustlist" id="loancust"'); ?>
</p>
<div id="cinfo">
OP here
</div>
javascript代码为:
$(document).ready(function(){
$('#loancust').change(function(){
var lcid = $('#loancust').val();
$.ajax({ url : "/index.php/ajax/show_customer_loan_info",
success : function(result)
{
$('#cinfo').html(result);
}});
});
});
控制器ajax
是:
function show_customer_loan_info()
{
echo 'Success !';
}
但是,该页面不是在div Success !
中显示cinfo
,而是重定向到服务器主页(在我的情况下为wampserver
),html表单位于网页顶部。我在哪里做错了?
答案 0 :(得分:0)
变化
$.ajax({ url : "/index.php/ajax/show_customer_loan_info",
为:
$.ajax({ url : "http://sitename/index.php/ajax/show_customer_loan_info",
我实现了您的代码并使用谷歌浏览器浏览器的网络控件来查看它没有看到ajax控制器。在输入完整的URL后似乎工作正常
但是如果您将表单嵌入到更大的页面中,则可能会在javascript更改事件中返回false。这将迫使javascript停止传播并提交表单。
祝你的项目好运!