2017-03-16 95 views
0

我正在嘗試使jquery.autocomplete.js自動完成。不幸的是,當我嘗試輸入任何內容時,調試器出現在SyntaxError中:JSON.parse:JSON數據第1行第1列的意外字符。 我還在使用codeigniter,所以任何人都可以幫助我嗎?jquery.autocomplete.js JSON.parse:JSON數據的第1行第1列的意外字符

Java腳本

<script type='text/javascript'> 
    $(function(){ 
     $("#asisten").autocomplete({ 
     source: "<?php echo base_url() ?>index.php/asisten/search" 
     }); 
    }); 
</script> 

控制器

public function search() 
{ 
    $keyword = $this->uri->segment(3); 

    $data = $this->db->from('mahasiswa')->like('nim',$keyword)->get(); 

    foreach($data->result() as $row) 
    { 
     $arr['query'] = $keyword; 
     $arr['suggestions'][] = array(
      'nama' =>$row->nama 
     ); 
    } 

    echo json_encode($arr); 
} 

輸入HTML

<input id="asisten" type="search"> 

JSON數據

{"query":"7","suggestions":[{"nama":"Pedro Nadirio"},{"nama":"Antony Hartono"},{"nama":"Juan"},{"nama":"Yonathan Aditya"},{"nama":"Edwin Widhiyanto"},{"nama":"Windy Hendra S"}]} 
+0

您能告訴我們正在生成的JSON數據嗎? – Murf

+0

編輯爲JSON數據 –

回答

0

在您的控制器中:嘗試像這樣..

public function search() 
    { 
     $keyword = $this->uri->segment(3); 

     $data = $this->db->from('mahasiswa')->like('nim',$keyword)->get(); 

     foreach($data->result_array() as $row) 
     { 
     $arr[] = $row['nama'];//array of namas 
     } 
     echo json_encode($arr); 
    } 
+0

它仍然出現相同的錯誤:( –

+0

嘗試編輯答案 –

+0

不要忘記先加載'url' helper。 –

相關問題