![](/s/cache/5d/95/5d95971e688c793bae05b3cd8398f83b.png)
0
Исправлен
Форматирование адреса
Пытаюсь воспользоваться примером: http://dadata.userecho.com/topic/379031-formatirovanie-adresa/#
Форматирование подсказок работает. Дальше подсказкой надо как-то воспользоваться.
Вариант1: выбрать из выпадающего списка. Тут форматирование пропадает, адрес попадает в окно ввода в неотформатированном виде.
Вариант2: покинуть окно ввода, нажав Enter или щелкнув мышкой вне окна. Этот вариант работает по-разному в зависимости от того, сколько осталось подсказок:
- несколько подсказок: поле ввода не меняется.
- одна подсказка: в поле ввода попадает правильно отформатированные адрес.
К сожалению, последний случай (и единственный, когда все работает правильно) срабатывает редко, т.к. кроме домов, в БД адресов встречаются еще и какие-то "владения", которых в реальной жизни не существует (пример на картинке).
![Image 47](/s/attachments/8488/1/186/c66bcde50dc2cc50b5a131b7b1894fd7.png)
Т.е. как правило, форматирование не работает.
Форматирование подсказок работает. Дальше подсказкой надо как-то воспользоваться.
Вариант1: выбрать из выпадающего списка. Тут форматирование пропадает, адрес попадает в окно ввода в неотформатированном виде.
Вариант2: покинуть окно ввода, нажав Enter или щелкнув мышкой вне окна. Этот вариант работает по-разному в зависимости от того, сколько осталось подсказок:
- несколько подсказок: поле ввода не меняется.
- одна подсказка: в поле ввода попадает правильно отформатированные адрес.
К сожалению, последний случай (и единственный, когда все работает правильно) срабатывает редко, т.к. кроме домов, в БД адресов встречаются еще и какие-то "владения", которых в реальной жизни не существует (пример на картинке).
![Image 47](/s/attachments/8488/1/186/c66bcde50dc2cc50b5a131b7b1894fd7.png)
Т.е. как правило, форматирование не работает.
Ответ
![](/s/cache/3a/75/3a75636b9ad9c228349f3fdaca2eff38.png)
0
Ответ
Исправлен
Антон Жиянов 10 лет назад
Исправили пример.
![](/s/cache/5d/95/5d95971e688c793bae05b3cd8398f83b.png)
Пока что нашел обходной путь: вынес форматирование адреса в отдельную функцию, использую ее и при форматировании подсказки, и при заполнении поля после выбора подсказки. Работает.
formatResult: formatResult,
onSelect: showSelected
function addressValue(suggestion) {
var address = suggestion.data;
return join([
join([address.settlement_type, address.settlement], " "),
join([address.city_type, address.city], " "),
join([address.street_type, address.street], " "),
join([address.house_type, address.house,
address.block_type, address.block], " ")
]);
};
function formatResult(value, currentValue, suggestion) {
return suggestion.value = addressValue(suggestion);
}
function showSelected(suggestion) {
return $('#address').val(addressValue(suggestion));
}
formatResult: formatResult,
onSelect: showSelected
function addressValue(suggestion) {
var address = suggestion.data;
return join([
join([address.settlement_type, address.settlement], " "),
join([address.city_type, address.city], " "),
join([address.street_type, address.street], " "),
join([address.house_type, address.house,
address.block_type, address.block], " ")
]);
};
function formatResult(value, currentValue, suggestion) {
return suggestion.value = addressValue(suggestion);
}
function showSelected(suggestion) {
return $('#address').val(addressValue(suggestion));
}
Сервис поддержки клиентов работает на платформе UserEcho