А как мне слушать событие клика, если у меня сначала по нажатию на кнопку выводится коллекция полигонов.
// вызов фунции для вывода многоугольников, // где они и формируются с помощтю ajax . Данные берутся из БДvar myCollection = PolygonData.myCollectionPolygon(); // обработчик произвольной кнопки, по нажатию на которую // происходит вывод многоугольников $('.ShowAllDistrict').bind('click', function(){ myMap.geoObjects.add(myCollection); //выводим коллекцию на карту // myExistPolygon - развание полигонов, которые добавляются в коллекцию // обработчик. myCollection.myExistPolygon.events.add('click', function(){ alert('data'); }); });Собственна проблема очевида, все полигоны имеют одно и тоже название и обработчик myCollection.myExistPolygon.events.add('click', .... срабатывает только по нажатию на последний добавленный на карту полигон.
ты чтото очень станное делаешь. Очевидно что в момент когда твоя функция отработает никаких элементов в ней не будет. Впрочем имя твоей переменной тут не при чем. Геообъектам в коллекции надо получать доступ через ее интерфейс
var myCollection = new ymaps.GeoObjectCollection(); $.post('/settings/thisCoordinate', function(data){ $.each(data, function(i, v){ var coordinate = JSON.parse(v.coordinate); myCollection.add(myExistPolygon = new ymaps.Polygon(coordinate, {}, {
В этом кусочке кода я в цикле добавляю геообъекты в коллекцию, чтобы эту коллецию целиком вывести на экран. Что странного?
Мне каким-то образом надо потом для каждого из элементов прописать onclick, чтобы для каждого из многоугольников в коллекции появлялся свой balloon, в котором буду заполнены поля формы именно для того многооугольника, на который я нажал.
странно что ты после $.post() в след. строке эту коллекцию возвращаешь и пытаешься повесить обработчики на те элементы которые в нее добавил. На самом деле ты возвращаешь пустую коллекцию, а элементы в нее добавятся уже после (асинхронно) в javascript все несколько иначе, чем например в пхп
Ладно, вы мне очень сильно поможете, есть дадите хоть один, хотя бы приблизительный пример решения моей проблемы.
Задача, вывести коллецию, которая состоит из ряда полигонов, при клике на который должен появиться balloon, содержащий информацию о соответствующем полигоне.