2014-10-31 3 views
0

У меня возникли проблемы с функцией автозаполнения из jquery. Мне нужно одно из полей из запроса в моей модели (работа с codeigniter btw), чтобы вернуть другое значение, я был бы признателен за любую помощь, спасибо.Вставить в текстовое поле другое значение из запроса автозаполнения

 $(function(){ 
     $('#buscador').autocomplete({ 
      minLength: 1, 
      source: "home/get_cliente", 

      select: function(event, ui){ 
       event.preventDefault(); 
       $('#buscador').val(ui.item.value); 
       $('#apellidos').val(ui.item.apellidos); 
      } 
      }); 
     }); 
+0

Что ваша проблема конкретно? Возвращает ли оно неправильное значение сейчас или оно не возвращает значение вообще? – mdewitt

+0

Это не возвращает значение, которое я хочу, например. Автозаполнение работает, оно возвращает имя, и я могу выбрать его, все правильно, моя проблема заключается в том, что я хочу вернуться в текстовое поле другого значения из таблицы –

+0

http://jsfiddle.net/arunpjohny/mf3L2qsx/3/ - можете ли вы скажите, что вы хотите, когда элемент выбран –

ответ

0

Ну, я получил мой ответ, я должен был изменить имя переменной в массиве на модели, как это:

модель:

function get_cl($q){ 
$this->db->select('*'); 
$this->db->like('nombres', $q); 
$query = $this->db->get('clientes'); 
if($query->num_rows > 0){ 
    foreach ($query->result_array() as $row){ 
    $new_row['label'] = htmlentities(stripslashes($row['nombres'])); //build an array 
    $new_row['value'] = htmlentities(stripslashes($row['id_cliente'])); 
    $row_set[] = $new_row; 
} 
    echo json_encode($row_set); //format the array into json data 
} 

}

Контроллер:

function get_cliente(){ 

if (isset($_GET['term'])){ 
    $q = strtolower($_GET['term']); 
    $this->autocompletado_model->get_cl($q); 
} 

}

JS:

 $(function(){ 

     $('#buscador').autocomplete({ 
      minLength: 1, 
      source: "home/get_cliente", 

      focus: function(event,ui){ 
       $('#buscador').val(ui.item.label); 
       return false; 
      }, 
      select: function(event, ui){ 
       id_cliente = ui.item.value; 
       $('#id_cliente').val(id_cliente); 
       return false; 
      } 
     }); 
Смежные вопросы