2017-02-06 6 views
0

У меня есть вход автозаполнения для поиска клиентов. Также у меня есть кнопка для добавления нового клиента с модальным. Когда клиент сохраняется в БД, я отправляю var с именем и фамилией прямо на текстовый файл, который нужно выбрать. Это работает нормально, только автозаполнение не выполняет поиск, пока я не удалю хотя бы 1 символ.Trigger JQuery autocomplete

Я использую это, чтобы заполнить автозаполнение поля:

document.getElementById('nombre_aut').value=JSON.parse(data).nombre; 

Это заполнит нормально, но не вызвать поиска.

Вот сценарий:

$("#nombre_aut").autocomplete({ 

    source: "cliente_data.php", 
    minLength: 3, 
    select: function(event, ui) { 

     } 
}); 

$(document).ready(function(){ 
     $('#insert_clt_form').on("submit", function(event){ 
      event.preventDefault(); 
      $.ajax({ 
        url:"insertar_clt.php", 
        method:"POST", 
        data:$('#insert_clt_form').serialize(), 
         success:function(data){ 

          $('#nuevo_usuario_modal').modal('hide'); 
         document.getElementById('nombre_aut').value=JSON.parse(data).nombre; 
        } 
       }); 
      } 
     }); 

ответ

0

Try:

$('#nombre_aut').val(JSON.parse(data).nombre).change(); 

изменение() вызывает изменение. Без него ничего, что вы не активируете функцию приемника изменений.

+0

Я пробовал, но он не работает. Автозаполнение заполнено, но не активировано ... –

+0

Просто изменил его немного больше, но я не думаю, что вы правильно изменяли значение, прежде всего, но после того, как значение изменено программно, вам нужно вызвать изменение() чтобы любые события, требующие изменения, реагировали. Вот пример, показывающий, как вы не получаете предупреждение до тех пор, пока не будет вызвана функция изменения. https://jsfiddle.net/29ts024y/2/ –

0
$('#nombre_aut').autocomplete('search', $('#nombre_aut').val()) 

Просто добавили это после document.getElementById('nombre_aut').value=JSON.parse(data).nombre;