Клуб API Карт

метка и её координаты.

e-lamps
9 декабря 2010, 12:25

Суть задачи - кликом по карте получить метку, в отдельной форме её координаты. При перетаскивании метки по карте (уточнение местоположения) так же необходимо получать координаты... Недостаток JavaScript говорит о своём. Итак, код:

// Событие однократное "метка по нажатию кнопкой на карте"
var myEventListener = YMaps.Events.observe(map, map.Events.Click, function (map, mEvent) {
        placemark = new YMaps.Placemark(mEvent.getGeoPoint(),  {draggable: true, hasBalloon: false, style: "default#carIcon"});
        map.addOverlay(placemark);
        YMaps.jQuery("#point").attr("value", mEvent.getGeoPoint());
        myEventListener.cleanup();
    }, this);


// Координаты по перетаскиванию
      YMaps.Events.observe(placemark, placemark.Events.DragEnd, function (obj)
  {
      YMaps.jQuery("#point").attr("value", obj.getCoordPoint());
  }
);

Метка создаётся, передаёт свои координаты, но вот потом... ничего не работает... (

Установив в ФФ FireBug, была найдена ошибка - "placemark is not defined"... Логически рассуждая - ессно, ведь placemark создаётся в функции совершенно другого события. Но фактически метка присутствует на карте... Как теперь всё это логически связать? А если проще - помогите плиз разобраться с этой ошибкой!

3 комментария
Подписаться на комментарии к посту
Надо навешивать событие драга метки прямо в обработчике клика по карте.
пример
называется "почувствуй себя идиотом"... ларчик просто открывался... Спасибо огромное!!!
Вы поставили очень правильный тег к своему сообщению "координаты в форму". Советую посмотреть обсуждения по этому тегу. В них уже решали вашу проблему.