我需要快速幫助。請幫我弄清楚這個問題。codeigniter ajax螢火蟲顯示200但不顯示結果
我有一個客戶端項目,這是在codeigniter框架。 我的客戶需要在他們的網站上自動完成。我儘量讓它工作。一切都很好我按照教程編寫了MVC。 但我的腳本不返回任何
我的自動完成
<link rel="stylesheet" href="<?php echo $this->config->item('view_path');?>autocomplete/ui.theme.css" type="text/ css" media="all" />
<script src="<?php echo $this->config->item('view_path');?>autocomplete/1.4.3.jquery.min.js" type="text/javascript"></script>
<script src="<?php echo $this->config->item('view_path');?>autocomplete/1.8.6.jquery-ui.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(this).ready(function() {
$("#postcode").autocomplete({
minLength: 1,
source:
function(req, add){
$.ajax({
url: "<?php echo base_url(); ?>home/lookup",
dataType: 'json',
type: 'POST',
data: req,
success:
function(data){
if(data.response =="true"){
add(data.message);
}
},
});
},
select:
function(event, ui) {
$("#result").append(
"<li>"+ ui.item.value + "</li>"
);
},
});
});
</script>
我的自動完成控制器
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class Autocomplete extends CI_Controller {
function index()
{
$this->load->view('autocomplete');
}
function lookup(){
// process posted form data (the requested items like province)
$keyword = $this->input->post('term');
$data['response'] = 'false'; //Set default response
$query = $this->MAutocomplete->lookup($keyword); //Search DB
if(! empty($query))
{
$data['response'] = 'true'; //Set response
$data['message'] = array(); //Create array
foreach($query as $row)
{
$data['message'][] = array(
'id'=>$row->PC_POST_CODE,
'value' => $row->PC_TOWN.' '.$row->PC_POST_CODE,
''
); //Add a row to array
}
}
if('IS_AJAX')
{
echo json_encode($data); //echo json string if ajax request
}
else
{
$this->load->view('autocomplete/index',$data); //Load html view of search results
}
}
}
/*結束文件autocomplete.php的/ /圖位置:./application/controllers/autocomplete.php */
和Model在示例中也相同。
當我看到火蟲的控制檯中,我看到這個消息,但沒有結果。
http://yaashinii.com/maxsurge/tyrechangr/index.php/home/lookup 200 OK 3.28s
您可以訪問的網站鏈接。
http://yaashinii.com/maxsurge/tyrechangr/
我也檢查,當我只使用一個simpe ajax調用,那麼結果也一樣。甚至當我改變控制器的方法,只顯示結果讓說我改變
function lookup(){
echo 'waheed'; exit;
}
即使這樣,同樣的結果
http://yaashinii.com/maxsurge/tyrechangr/index.php/home/lookup 200 OK 3.28s
請幫我來說這是一個新的問題,我沒有」不明白爲什麼它會發生。
您可以在開始區域檢查自動完成功能。 –
你在JSON之前有''waheed''輸出,導致語法錯誤。 – Musa
感謝@Musa的快速回復。但如果我已經waheed它應該顯示在控制檯螢火蟲waheed字符串,你可以看到在控制檯螢火蟲鏈接轉紅狀態200好,但響應是沒有什麼。 –