Клуб API Карт

Ответ для YMapsML в виде XML документа

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

Здравствуйте. Столкнулась с таким вопросом, не смоглла найти на форуме.

Функция YMapsML получает в кач первого аргумента url xml документа, где все метки описаны.

мой xml формируется посредством php, т.е в файле get_address_xml.php
но когда я произвожу некоторую фильтрацию объктов я посредством аякса передаю в этот файл параметр  нужный

var res = $.ajax({

'dataType':'json',

'type': 'POST',

'url': '/get_address_xml.php',

'data': params,

'success': function () {}

}).responseXML 

Но этот результат я получаю как схема xml и хочу его же использовать для построения карты:

 

ml = new YMaps.YMapsML( res )

map.addOverlay(ml)

но к сожалению так не получается. Подскажите как сделать так, чтобы передать результат в кач сиходных данных для построения карты?

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

вы почитайте документацию про YMapsML он принимает урл и ходит за данными сам используя метод Get

да я читала, я знаю, но возможно я вопрос неправильно сформулировала.

Существует ли способ передать в качестве аргумента не ссылку, а результат в виде xml.

Или же мне нужно использовать другой метод добавления оверлея или же мне вынести как-то этот кусок куда-то в отдельный файл? я не знаю как поступить. Или сохранить результат где-то и потом к нему обратиться. Как более оптимально?? Я не все знаю и, возможно, есть в YMapsML методы, позволяющие это релаизовать просто

А может я не с той стороны подхожу? Может быть как-то по другому передать параметр в файл get_address_xml? непосредственно в момент вызова?

а что мешает передать параметр непосредственно в урл?

Да действительно передались. Вначале не получалось их подхватывать.

Я нашла лучшее решение с помощью filter, но у меня опять таки появилась проблема.

Я пытаюсь обратиться к метаданным из схемы xml

 var res = this.filter(function (obj) {

 return (obj.metaDataProperty.AnyMetaData.objtype == 4)

});

но яваскрипт при этом ругается obj.metaDataProperty.AnyMetaData is undefined

 

Структура xml такая:

 id="redrose">/uploads/20111207/preview_elem_file1_6_113321.jpg/uploads/20111207/preview_elem_file1_7_113726.jpgin1171ИН117Ногинск, ул. 3го Интернационала, д. 11738.416637 55.846983#mediaStyle1

ну вы посмотрите какие поля там вообще есть

вставьте console.log(obj); вместо return