我有一个我正在处理的网站,我正在尝试向控制器(codeigniter framework)发出 ajax 请求。我在 firebug 中看到我的控制器接收我的帖子值很好,但由于某种原因它没有发回响应。我已经将其设置为非常简单,此时无需数据库调用,仅用于测试,但它仍然无法正常工作。有什么想法吗?
以下是我的观点:
<div class="purchaseState">
<input type="text" name="city" id="city" class="grayGrad"/>
</div>
<div>
<ul id="cityResults">
<!-- AJAX results here -->
</ul>
</div>
这是我的控制器返回值:
function citySearch() {
echo '<li>test</li>';
}
这是我的 Jquery ajax
//New City Search
$('#city').keyup( function() {
var city = $('#city').val();
$.ajax({
type: "POST",
url: "page/citySearch",
data: { city: city },
}).done(function( data ) {
$('ul#cityResults').append(data);
});
});
你应该使用ajax success
回调:
$('#city').keyup(function() {
var city = $('#city').val();
$.ajax({
type: "POST",
url: "page/citySearch",
data: { city: city },
success: function(data) {
$('ul#cityResults').append(data);
}
});
});
请按以下方式更改 AJAX 函数中的 url。
$('#city').keyup(function() {
var city = $('#city').val();
$.ajax({
type: "POST",
url: "<?php echo base_url; ?>page/citySearch",
data: { city: city },
success: function(data) {
$('ul#cityResults').append(data);
}
});
});