блокировка текстового поля в jquery auto-complete - разрешить отправку только в параметрах автозаполнения - PullRequest
2 голосов
/ 11 октября 2011

Привет, я ищу помощь в моем коде, который позволяет автозаполнение, только в пределах указанного массива данных. Таким образом, разрешено вводить только данные в массиве автозаполнения. например, если пользователь ввел iran01, то пользователь не разрешит ввести 01, потому что iran01 недопустим. или, например, если пользовательский тип NNN после iran, то это будет iranNNN, что также недопустимо. Тогда только текст должен быть в текстовом поле, которое является действительной записью. Может кто-нибудь сказать, как это сделать.

может кто-нибудь сказать, как получить это поведение.

$(document).ready(function () {
                     data = ["iran", "iraq", "Libya", "india"];
                    $("#autocomplete").autocomplete(data)
               });

               $('input#autocomplete').bind('keypress keyup', function(){

                 if ($.inArray($(this).val(), data) == -1){
                    $(this).val('');
                    $("#result").html("No match found!" + $(this).val());
              }

           });

            $('input#autocomplete').result(function (event, data, formatted) {
                $("#result").html(!data ? "No match found!" : "Selected: " + formatted);

            }).keyup(function () {
                $(this).search();

            });

         } 
    });

1 Ответ

0 голосов
/ 11 октября 2011

Вы можете поместить слушателя в событие изменения вашего поля ввода и затем убедиться, что элемент был выбран.Проверьте мой ответ на этот вопрос:

jquery автозаполнение поле, которое требует выбранного значения?

http://jsfiddle.net/vZeHr/4/

...