2014-02-15 50 views
1

你好,我的ajaz autocomplite不工作。请告诉我。错误在哪里? 当我输入字母 - 显示空的autocomplite没有文字。 而我输入错误的话 - autocomplite不隐藏Codeigniter ajax autocomplite不工作

模式

class Auto_nickname extends CI_Model { 
    function lookup($keyword) { 
     $this->db->select('name')->from('unit'); 
     $this->db->like('nickname',$keyword,'after'); 
     $query = $this->db->get(); 
     return $query; 
    } 
} 

控制器

function q_nickname() { 
    $this->load->database(); 
    $this->load->model("Auto_nickname"); 
    $keyword = $this->input->post('select_people'); 
    $query = $this->Auto_nickname->lookup($keyword); 

    if ($query->num_rows() > 0) { 
     $data = array(); //Create array 
     foreach ($query->result() as $row) { 
      $data[] = array(
       'name' => $row->name, 
      ); 
     } 
     echo json_encode($data); 
    } 

} 

HTML + JS

<script> 
$(document).ready(function() { 
    $("#txt").autocomplete({ 
     source:baseUrl+"home/q_nickname", 
     dataType: 'json', 
     type: 'POST', 
     minLength:1 
    }); 
}); 
</script> 
<input type="text" name="select_people" id="txt" /> 
+0

HTTP://www.2my4ed ge.com/2013/08/autocomplete-search-using-php-mysql-and.html,或者如果你编写我的下面的代码,那么它会工作,试试吧 –

回答

1

模型 -

class Auto_nickname extends CI_Model 
{ 
    function lookup($keyword) 
    { 
     $this->db->select('name')->from('unit'); 
     $this->db->like('nickname',$keyword,'after'); 
     $query = $this->db->get(); 
     return $query; 
    } 
} 

控制器

function q_nickname() 
{ 
    $this->load->database(); 
    $this->load->model("Auto_nickname"); 
    $keyword = $this->input->post('select_people'); 
    $data['query'] = $this->Auto_nickname->lookup($keyword); 
    $this->load->view('yourview',$data); 
} 

视图 -

<script> 
    $(function() { 
     var names = [ 
      <?php 
      //var_dump($query); 
      foreach($query as $nm): 
      if(isset($nm->nickname)) 
       echo '"'.$nm->nickname.'",'; 
      endforeach; 
      ?> 
        "" , ]; 
      $("#txt").autocomplete({ 
       source: names 
      }); 
    }); 

<input type="text" name="select_people" id="txt" />