2010-11-24 3 views
5

Автозаполнение никогда не срабатывает при вводе первого символа, но 2-го. Хотя после использования back-space он работает для minLength = 1. Кроме того, selectFirst: true никогда не устанавливает первый элемент массива при загрузке страницы.jQuery autocomplete minLength

$().ready(function(){ 
     $('#CompanyName').autocomplete({ 
       source: companyNames, 
       select: SetLocations, 
       selectFirst :true, 
       minLength: 0 //corrected as suggested, but still no change 
     }); 
}); 

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

ответ

11

У вас есть несколько синтаксических ошибок, то document.ready обработчик отсутствует скобка (и осуждается в любом случае) и запятая в параметрах, он должен выглядеть следующим образом:

$(function() { 
    $('#CompanyName').autocomplete({ 
      source: companyNames, 
      select: SetLocations, 
      selectFirst: true, //here 
      minLength: 0 
    }); 
}); 

Кроме того, автозаполнение активирует послеminLength символы, если вы хотите немедленно, используйте 0, from the docs:

MINLENGTH : Минимальное количество символов, которое пользователь должен ввести до активации автозаполнения. Zero полезен для локальных данных с помощью всего нескольких элементов. Должно быть увеличено, когда есть много предметов, где один символ будет соответствовать нескольким тысячам предметов.

.....

+0

@Nick: О, вот моя опечатка. Сожалею. Но перекрестный контроль с моим кодом. Все запятые на месте. – 2010-11-24 10:06:54

Смежные вопросы