1

Я искал this учебник для создания функциональности автозаполнения в моей форме. Я довольно новичок в codeigniter и jquery. Мое имя таблицы - 'user_profile' Я хочу автозаполнять 'comp_person_name', а значение должно быть 'p_u_id'.jQuery UI Autocomplete в CodeIgniter отображает значение вместо метки

вот моя модель

public function get_user($q){ 
    $this->db->select('comp_person_name,p_u_id'); 
    $this->db->like('comp_person_name', $q); 
    $query = $this->db->get('user_profile'); 
    if($query->num_rows > 0){ 
     foreach ($query->result_array() as $row){ 
     // $row_set[]=htmlentities(stripslashes($row['comp_person_name'])); 
     $new_row['label']=htmlentities(stripslashes($row['comp_person_name'])); 
     $new_row['value']=htmlentities(stripslashes($row['p_u_id'])); 
     $row_set[] = $new_row; //build an array 

     } 
     echo json_encode($row_set); //format the array into json data 
     } 
    } 

и вот мой контроллер

public function get_users(){ 
     $this->load->model('user_model'); 
     if (isset($_GET['term'])){ 
     $q = strtolower($_GET['term']); 
     $this->user_model->get_user($q); 


      } 
     } 

и здесь вызов функции

$("#partners").autocomplete({ 
    source: "get_users" , 
    minLength: 0 
     }).focus(function(){    
      $(this).trigger('keydown.autocomplete'); 
     }); 

& Html код

<div class="form-group"> 
    <label class="col-sm-2 control-label">Referral partner </label> 
     <div class="col-sm-10">         
     <input type="text" id="partners" name="assign_to" placeholder="Search partner" class="form-control" /> 
     </div> 
    </div> 

Проблема заключается в том, когда я нажимаю клавиши, она отображает имя людей при выпадающем меню и значения на форме ввода. Как я могу получить имя на поле ввода also.See ПОС ниже

enter image description here

+0

может предоставить ваш html-код, пожалуйста? – Gautam

+0

@Gautam Извините, добавлено html – ashkar

+0

просто используйте var_dump ($ query); см. waht - это результаты – Linus

ответ

0

я решил сам с помощью this stackoverflow thread

Отредактировано Javascript для

$("#partners").autocomplete({ 
      source: "get_users", 
      minLength: 2, 
     select: function(event, ui) { 
      event.preventDefault(); 
      $("#partners").val(ui.item.label); 
      $("#partners-hidden").val(ui.item.value); 
      }, 
     focus: function(event, ui) { 
      event.preventDefault(); 
      $("#partners").val(ui.item.label); 
      $("#partners-hidden").val(ui.item.value); 
     } 
    }); 

и добавил скрытый вход поле в html с id # партнерами, скрытое для хранения и отправки значения