Клуб API Карт

Как задать "Объект не найден"?

cvek.ru
8 декабря 2009, 12:19

Здравствуйте!

Я использую геокодирование, ищу объекты на карте по адресам. Моя функция:

            if (typeof(map) == "undefined") {
                map = new YMaps.Map(document.getElementById("YMapsID"));
                map.addControl(new YMaps.TypeControl());
            } else map.removeOverlay(geoResult);
            var geocoder = new YMaps.Geocoder(value, {results: 1, boundedBy: map.getBounds()});


            YMaps.Events.observe(geocoder, geocoder.Events.Load, function () {
                if (this.length()) {
                    geoResult = this.get(0);
                    map.addOverlay(geoResult);
                    map.setBounds(geoResult.getBounds());
                } else {
                    alert("Ничего не найдено"); //?
                }
            });

Работать-то всё работает, но с одним недостатком: если задаю реальный адрес, всё нормально, если абсолютно нереальный - тоже (alert вылетает), а вот если смесь (например, "Москва, Абракадабра"), то возвращается Москва. Как мне сделать поиск строгим?

2 комментария
Подписаться на комментарии к посту
Вы можете узнать точность найденного результата по полю precision. Ориентируюсь на него Вы сможете понять в каком случае необходимо вывести alert.
Большое спасибо за помощь!