Как получить автозаполнение JQuery из массива ввода - PullRequest
0 голосов
/ 11 января 2019

Я использую codeigniter и хочу выполнить автозаполнение jquery и вернуть значение для другого поля, например, получить имя автозаполнения, затем отобразить отображаемое имя с ценой. Проблема, которую я просто могу сделать для одного входа, но у меня есть несколько (массив)

Введите

<table>    
    <tr>
        <td><input type="text" name="name[]" autofocus=""  class="name"></td>
        <td><input type="text" name="price[]" class="price" ></td>
    </tr>
    <tr>        
        <td><input type="text" name="name[]" autofocus=""  class="price">
        <td><input type="text" name="price[]" class="price" ></td>
    </tr>
</table>

Jquery

$(document).on("focus", ".table", function(){
    $('[name="name[]"]').each(function(i,e){
        $(this).autocomplete({
            source: "<?php echo base_url('Penjualan/get_autocomplete/?');?>",
            select: function (event, ui){
                  $('[name="name[]"]').val(ui.item.name);
                  $('[name="price[]"]').val(ui.item.price);
             }
         })
     })
 });

Контроллер

public function get_autocomplete(){
        $this->load->model('PenjualanModel');
        if (isset($_GET['term'])) {
            $result = $this->PenjualanModel->cariProduk($_GET['term']);
            if (count($result) > 0) {
            foreach ($result as $row)
                $arr_result[] = array(
                    'name' => $row->name,
                    'price' => $row->price,
                );
                 echo json_encode($arr_result);
            }
        }
    }

Модель

public function cariProduk($name){
    $this->db->like('name', $name , 'both');
    $this->db->order_by('name', 'ASC');
    $this->db->limit(10);
    return $this->db->get('stok')->result();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...