Сопоставить введенный пользователем ввод с автозаполнением jquery - PullRequest
1 голос
/ 27 апреля 2011

Я использую автозаполнение jquery-ui для проверки некоторых входных данных формы.У меня есть этот код:

function addAutoComplete(beacon, url) {
    $(document).ready(function(){
        $('input' + beacon).autocomplete({
            source: url,
            minLength:3,
            select: function(event, ui) {
                var selectedObj = ui.item;
                $(beacon+'_autocomplete_id').val(selectedObj.id);
                return false;
            },
            change: function(event, ui){
                if (ui.item == null){
                           $(beacon+'_autocomplete_id').val(0);
                } else {
                   $(beacon+'_autocomplete_id').val(ui.item.id);
                   }

            }
            });
        });
}       

Цель проста: связать значение "id" данных со скрытым полем.Когда пользовательского ввода нет в источнике, мы ставим «0».Моя проблема в том, что когда пользователь вводит все и не нажимает или не использует автозаполнение, он может написать правильное значение, но оно не будет подтверждено как таковое.

Я видел, как избежать этой проблемыесли вы храните источник в локальном массиве, например, но есть ли способ сделать это с источником, исходящим из URL?Другими словами, есть ли свойство, которое позволяет мне манипулировать JSON, который я иду по URL, без необходимости кодировать мою функцию обратного вызова для источника?

Заранее спасибо!

1 Ответ

1 голос
/ 27 апреля 2011

Нашел решение: с помощью Скотта Гонсалеса замечательно опция автовыбора .Работает отлично, действительно отлично.

...