Клуб API Карт

Вопрос по записи данных в xml.

Williams.Smirnov
20 июня 2013, 12:55

Я редактирую геолинию с помощью стандартных функций

 

function onGeoXmlLoad(res) {
    // myMap.geoObjects.add(res.geoObjects);
    if (res.mapState) {
        //res.mapState.applyToMap(myMap);
        //Переносим всю коллекцию в массив
        var itemss = [];
        res.geoObjects.each(function (item) {
            itemss.push(item);
        })
        //Вывод полученных координат
        for (var i = 0; i < itemss.length; i++) {
            var victor = res.geoObjects.get(i).geometry.getCoordinates();
            //var myPolyline = new Array();
            myPolyline[i] = new ymaps.Polyline(victor, {}, {
                // Задаем опции геообъекта.
                // Цвет с прозрачностью.
                strokeColor: "#0066ffff",
                // Ширину линии.
                strokeWidth: 4,
                // Максимально допустимое количество вершин в ломаной.
                editorMaxPoints: 500,
                // Добавляем в контекстное меню новый пункт, позволяющий удалить ломаную.
                editorMenuManager: function (items) {
                    items.push({
                        title: "Удалить линию",
                        onClick: function () {
                            for (var i = 0; i < itemss.length; i++)
                                myMap.geoObjects.remove(myPolyline[i]);
                        }
                    });
                    return items;
                }
            });
            myMap.geoObjects.add(myPolyline[i])
        }
        $("span[id='startEditPolyline']").click(
            function () {
                for (var i = 0; i < itemss.length; i++) {
                    myPolyline[i].editor.startEditing();
                }
            });
    }
    //Нажимаем для редактирования полилинии
    $("span[id='stopEditPolyline']").click(
        function () {
            for (var i = 0; i < itemss.length; i++) {
                myPolyline[i].editor.stopEditing();
                console.log(myPolyline[i]);
            }
            alert("Линия успешно сохранена :)");
        });
}
}
xmlload();
}

 

После того как я выполняю myPolyline[i].editor.stopEditing(); измененные коорднаты сохраняются в переменной? И как мне обновить xml файл, что бы туда записались новые координаты?

3 комментария
Подписаться на комментарии к посту
Williams.Smirnov
20 июня 2013, 14:46

Я так понял только с помощью PHP и ручками?

Да, с помощью php ваш же хмл находится на сервере, а js это клиентская херня

Williams.Smirnov
20 июня 2013, 17:15

Кстати вчера была проблема в том , что тот массив задавлся в цикле) Вадим, подскажите, а xml собирать ручками надо? Или можно как-то передать коллекцию или объект или еще что-то?)