JQuery автозаполнение сомнения - PullRequest
0 голосов
/ 25 февраля 2011
                $("#caller__MODULE_ID__").focus().autocomplete(userData, {
                    minChars: 0,
                    max:4,
                    width: "20%",
                    matchContains: true,
                    cacheLength: 0,
                    selectFirst: false,
                    autoFill: false,
                    formatMatch: function(row, i, max) {
                                           return "<table class='tbl-ac' border='0' cellpadding='0' cellspacing='0'><tr><td>"+ userData[i].split(":")[0] + " &lt;" +  userData[i].split(":")[1] + "&gt;</td></tr></table>";

                    },
                    formatResult: function(row) {
                        var rowString = row+"";
                        return rowString.split(":")[0];
                    }
                });

Проблема: Когда я очищаю текстовое поле, всегда отображаются первые четыре записи списка автозаполнения.Как их устранить

Я также заметил, что когда я нажимаю на вкладку, она очищается.Я попробовал событие нажатия клавиши, и это тоже не помогло.См. Код ниже для нажатия клавиш

$("#caller__MODULE_ID__").bind("keypress",function(event){
          if($("#id").text()=="")
          {
            myEvent = jQuery.Event("keypress");
            myEvent.keyCode= 9;
            $("#caller__MODULE_ID__").trigger(myEvent);
          }
          });

PS: пробовал в браузере Firefox

1 Ответ

1 голос
/ 25 февраля 2011

Вам действительно нужно еще раз взглянуть на официальную документацию для автозаполнения, причина, по которой у вас возникают проблемы, - это множество добавленных вами параметров. (Включая вызываемый вами метод formatMatch, могу я спросить, почему именно вы форматируете его как таблицу?!)

Все, что вам действительно нужно указать, - это элемент для настройки автозаполнения и пользовательские данные, которые начинаются там при абсолютном необработанном запуске и начинают добавление обратно в ваши параметры. Это приведет вас к основной причине вашей ошибки.

Если вы хотите, чтобы я немного больше отлаживал для вас, пожалуйста, опубликуйте ваш ПОЛНЫЙ код, и я прыгну через него, чтобы узнать причину вашей ошибки.

Ресурс: http://docs.jquery.com/Plugins/autocomplete

Редактировать: (Добавить основные принципы работы этого компонента)

$("#caller__MODULE_ID__").autocomplete(userData);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...