Клуб API Карт

13 комментариев
Sergey Konstantinov
28 января 2016, 04:25
map.geoObjects.each(function (obj) {
    if (/* условие поиска выполнено */) {
          // обработка найденной метки
          return false;
    }
});

а для поиска по меткам можно использовать стандартный SearchControl или нужно делать поиск отдельно от карты?

теоретически да

в опции provider SearchControl-a можно указать свой класс с интерфейсом IGeocodeProvider, с методом geocode, и вместо хождения по http он будет искать в коллекции через each, как вам   написал

никак не получается разобраться с поиском... кто-нибудь может мне на моем примере показать, как это делается? свой скрипт могу скинуть по почте.

 

бабушка-бэтмен, ты меня уже не раз выручал:-D

Спасибо огромнейшее!!!

привет,   

мы поделились в клубе этим примером,

так как его часто спрашивают.

Если он тебе помог, хочу попросить тебя отписать в комментах к этому посту, где и в какой задаче он тебе пригодился, ну и про свой проект вообще.

Здравствуйте, огромное спасибо за Ваш пример - очень помог! А вы не подскажите как сделать поиск ближайшей метки, если искомая не найдена. Метки с названиями городов, т.е. я ввожу город Воронеж в поиске, если метки в воронеже нет, то выдают к примеру 2 метки в ближайших  городах. Заранее спасибо!

вам нужно поправить метод geocode,

дописать в него свою поисковую логику.

Спасибо! А как сделать масштабирование карты относительно найденной метки?

что значит символ ~

в стороке if(~prop.toLowerCase().indexOf(request.toLowerCase()))

это побитовое "NOT" см. последний коммент

Сколько будет стоить сделать поиск, как я писал выше? очень нужно.... можно ответить сюда vanek.ru@inbox.ru или скайп frederik_vain