1

我有一个正在开发的网站,我正在尝试向控制器(codeigniter 框架)发出 ajax 请求。我在萤火虫中看到我的控制器正在接收我的帖子值,但由于某种原因它没有发回响应。我已经将其设置为非常简单,此时无需数据库调用,仅用于测试,但仍然无法正常工作。有任何想法吗?

在我看来,这是我的表格:

<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);
    });
});
4

2 回答 2

0

你应该使用ajaxsuccess回调:

$('#city').keyup(function() {

 var city = $('#city').val();

    $.ajax({
         type: "POST",
         url: "page/citySearch",
         data: { city: city },
         success: function(data) {
            $('ul#cityResults').append(data);
         } 
    });
});
于 2012-07-04T05:05:24.713 回答
0

请按以下方式更改 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);
     } 
});
});
于 2012-07-04T06:36:41.117 回答