|
1С 8.3.8 УФ и Автоподбор адреса c google | ☑ | ||
|---|---|---|---|---|
|
0
Darhon
29.08.16
✎
16:49
|
Здравствуйте! разбираю пример автоподбора адреса с помощью API ГУГЛ. В принципе все работает, кроме странного поведения формы...После ввода символа первого, вываливается список адресов и ПОЛЕ очищается, то есть по 2,3 и более символам искать нереально....вот код:
&НаКлиенте Процедура АдресАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка) СтандартнаяОбработка=Ложь; Если ЗначениеЗаполнено(Текст) Тогда autocompletePlaceGoogle(Текст, ДанныеВыбора, СтандартнаяОбработка); КонецЕсли; КонецПроцедуры //Теперь самое основное, опишем процедуру autocompletePlaceGoogle. Процедура autocompletePlaceGoogle(пАдрес, списокАдресов, СтандартнаяОбработка) Экспорт //&components=country:ua отбор по стране ПреобразованныйАдрес = "/maps/api/place/autocomplete/json?input=" + пАдрес + "&types=address&language=ru&key=" + getAPIKeyGoogle(); Соединение = Новый HTTPСоединение("maps.googleapis.com",,,,,,Новый ЗащищенноеСоединениеOpenSSL); ОтветСервера = Соединение.Получить(Новый HTTPЗапрос(ПреобразованныйАдрес)).ПолучитьТелоКакСтроку(); JSON = Новый ЧтениеJSON; JSON.УстановитьСтроку(ОтветСервера); jsonОтвет = ПрочитатьJSON(JSON); Если НЕ jsonОтвет.Свойство("predictions") ИЛИ НЕ jsonОтвет.Свойство("status") Тогда Возврат; КонецЕсли; predictions = jsonОтвет.predictions; status = jsonОтвет.status; Если status <> "OK" Тогда Возврат; КонецЕсли; списокАдресов = Новый СписокЗначений; Для Каждого найденныйАдрес ИЗ predictions Цикл списокАдресов.Добавить(найденныйАдрес.description); КонецЦикла; КонецПроцедуры // Autococomplete() Подскажите как сделать так, чтобы можно было набирать несколько символов подряд и он бы фильтровал значения в зависимости от набранной подстроки. Заранее спасибо. |
|||
|
1
Darhon
29.08.16
✎
16:55
|
ЗЫ. Обновление текста редактирования стоит "Не использовать"
|
|||
|
2
Mauser
29.08.16
✎
16:56
|
Там в СП для этого события что-то про серверные вызовы написано. Прочти пожалуйста.
|
|||
|
3
Mauser
29.08.16
✎
16:57
|
Можно вслух, десятка раз, для начала, думаю хватит.
|
|||
|
4
Darhon
29.08.16
✎
16:57
|
(2) серверные вызовы не используются, все в контексте клиента (( Про серверные вызовы знаю...
|
|||
|
5
Mauser
29.08.16
✎
16:58
|
А в коде у тебя что написано?
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |