2017-03-16 2 views
0

Ich versuche, Autovervollständigung mit jquery.autocomplete.js zu machen. Leider, als ich versuche, etwas einzugeben, gab der Debugger mit SyntaxError: JSON.parse: unerwartetes Zeichen in Zeile 1 Spalte 1 der JSON-Daten. Ich bin noch neu mit codeigniter, also kann mir jemand dabei helfen?jquery.autocompleted.js JSON.parse: unerwartetes Zeichen in Zeile 1 Spalte 1 der JSON-Daten

Java Script

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

-Controller

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

Eingang HTML

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

JSON-Daten

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

Können Sie uns die JSON-Daten zeigen, die produziert werden? – Murf

+0

für JSON-Daten Edited –

Antwort

0

In Ihrem Controller: versuchen Sie es so.

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

Es ist immer noch die gleichen Fehler erscheint :( –

+0

versuchen bearbeitet Antwort. –

+0

vergessen Sie nicht zuerst 'url' Helfer zu laden. –

Verwandte Themen