Для текстового поля есть автозаполнение. Условие, чтобы при клике в поле выпадал весь список. При простом варианте без
$(document).on('focus', 'input[name *= city]', function() { ... все работает нормально. Как только пытаюсь повесь автокомплит на динамический элемент, то при клике в input больше 1го раза autocomplete выполняется такое же количество раз сколько раз было кликов в текстовом поле. То есть при 10-ом клике autocomplete 10-ть раз сработает. Как быть? Было у кого такое? Как лечить?
$(document).on('focus', 'input[name *= city]', function() {
$(this).autocomplete({
minLength: 0,
source: function(request, response){
console.log('get');
shippingData.getAddress('getCities', request.term).done( function() {
response($.map(shippingData.src, function(item) {
return {
label: item['Description'],
value: item['Description']
}
} ));
} );
},
select: function(e, u) {
var old_value = $(this).val();
$(this).val(u.item.value);
if (u.item.value != old_value) {
$(this).trigger('change');
}
},
position: {
'my': 'right top',
'at': 'right bottom'
}
} )
.on('click', function() {
$(this).autocomplete('search', '');
} );
});