Клуб API Карт

Как передать координаты перемещаемой метки в поля формы?

Пост в архиве.

Есть форма с полями:

<input id="geomapx" type="text" name="geox" value="">

<input id="geomapy" type="text" name="geoy" value="">

  

<script type="text/javascript">
    ymaps.ready(init);
    function init() {
        var myMap = new ymaps.Map("map", {
            center: [52.724576, 41.456099],
            zoom: 10
        });
        myMap.controls
        // Кнопка изменения масштаба. 
        .add('zoomControl', {
            left: 5,
            top: 5
        })
        // Список типов карты 
        .add('typeSelector')
        // Стандартный набор кнопок 
        .add('mapTools', {
            left: 35,
            top: 5
        });
        var oldCoords;
        myGeoObject = new ymaps.GeoObject({
            geometry: {
                type: "Point",
                coordinates: [52.724576, 41.456099]
            },
            properties: {
                iconContent: 'Метка',
                balloonContent: 'Меня можно перемещать'
            }
        }, {
            preset: 'twirl#redStretchyIcon',
            draggable: true
        });
        myGeoObject.events.add("dragend", function (e) {
            var coords = e.get('coordPosition');
            document.getElementById('geomapy').value = coords;
            document.getElementById('geomapx').value = coords;
        });
        myMap.geoObjects.add(myGeoObject);
    }
</script>

 

Есть карта с меткой при перетаскивании которой нужно ее координаты вносить в поля формы. Но почему-то не работает ((((

Помогите в чем моя ошибка и как ее исправить?

6 комментариев

дайте ссылку на вашу карту

она в админке, доступ к ней закрыт

Вообщем воспользовался вот этим скриптом, исправил под свои нужды http://dimik.github.io/ymaps/examples/location-tool/

Можно выложить этот кусочек кода на jsfiddle.net

 var coords = e.get('target').geometry.getCoordinates();

 

Всеволод Шмыров
28 января 2016, 01:56

document.getElementById('geomapy').value = coords;
document.getElementById('geomapx').value = coords;

Вы записываете в инпуты массив

А как определить координаты в массиве?

разобрался

coords[0].toPrecision(6)
coords[1].toPrecision(6)