Клуб API Карт

Событие очистки результатов поиска

textor
29 декабря 2014, 15:59

Использую API 2.1 и стандартный searchControl

Хочу, чтобы при появлении результатов поиска пропадали другие точки на карте, поэтому вешаю на событие submit для searchControl функцию удаления всех точек.

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

Спасибо.

2 комментария
Подписаться на комментарии к посту

Вроде бы спец. события для этого нет, но можно же подписаться на изменения одного из полей state контрола через монитор, примерно так:

 

    var searchControl = myMap.controls.get('searchControl');

    

    var stateMonitor = new ymaps.Monitor(searchControl.state);

    

    stateMonitor.add('results', function (results) {

        if(!results) {

            console.log('трям!!!');

        }

    });

 

http://jsfiddle.net/dLwfjcf5/

Спасибо!
Не знал о такой возможности. Очень помогло.