Какое событие подобрать типа change для input
Описание задачи.
Имеется текстовое поле. Плагин autocomplete ui. В autocomplete при загрузке DOM аяксом подгружаются данные (названия городов). Теперь при наборе названия города появляется подсказка внизу текстового поля. И по щелчку по нему, опять идет аякс-запрос на сервер, котоырй по названию города тянет цену доставки для него. Теперь проблема в чем. Аякс подгрузка городов проходит нормально. Далее на подгрузку цен поставил change поля:
$("#countprice").change(function(){
$.ajax({
...
});
});
Но когад мы пишем название города полностью, например "Челябинск", то все проходит хорошо..название города сравнивается, тянется цена..но вот если мы во вреям набора воспользуемся подсказкой autocomplete и выберем "Челя" то город вставляется нормально в поле..а вот запрос обрабатывает как раз "Челя"..соотвесвтенно выдается ошибка о том, что такого города нет.. Вопрос: Какое событие лучше подобрать или сделать возможно свое, чтобы сначала вставлялось название города в поле, а потом шел запрос на сервер? Как вариант назанчить запрос на клик по подсказке autocomplete, но каким элементам я не назначал клики - она не работали, хотя подсказка - это список с ul, li,a. |
Вы хоть документацию читайте
у этого плагина есть своё событие change .... change – событие autocompletechange наступает после того, как выбран один из пунктов списка. Событие всегда наступает после close. или
$("#tag").autocomplete({
source: availableTags,
select: function(event, ui) {
alert('Событие: ' + event.type +
',\nзначение: ' + ui.item.value);
}
});
|
В autocomplete есть событие onselect, которое срабатывает при выборе элемента из списка.
Типа того:
$('#countprice').autocomplete({
//...
onSelect: function(value, data) {
alert(value+', '+data);
}
//...
});
|
Спасибо!)
Каюсь, в этот раз ступил и не прочитал что написано в документации плагина. Думал что все манипуляции надо производить стандартными событиями поля. Задача решилась с помощью события close..он выполняется после вставки значения в поле. select к сожалению не подошел, так же отсылалось половина города, то есть оно выполняется до вставки значения. |
| Часовой пояс GMT +3, время: 14:14. |