Как разобрать XML-файл для местоположения маркера и графика на карте - PullRequest
0 голосов
/ 23 марта 2012

Я пытаюсь прочитать точки из файла XML, а не из JavaScript, как в примере ниже.

https://google -developers.appspot.com / карты / документация / javascript / examples / marker-animations-iteration

Но это не работает для меня.Я создал XML-файл, содержащий:

<?xml version="1.0" encoding="UTF-8"?>
<companies>
    <company>
        <lat>52.511467</lat>
        <lng>13.447179</lng>
    </company>
    <company>
        <lat>52.549061</lat>
        <lng>13.422975</lng>
    </company>
    <company>
        <lat>52.497622</lat>
        <lng>13.396110</lng>
    </company>
    <company>
        <lat>52.517683</lat>
        <lng>13.394393</lng>
    </company>
</companies> 

Но я не могу получить баллы, отображаемые на картах Google v3.У кого-нибудь есть пример разбора xml-файла на координаты и последующего отображения их на карте?

Ответы [ 2 ]

1 голос
/ 09 января 2015

Блестяще - большое спасибо за подсказку! Одна маленькая ошибка все еще в коде выше:

заменить

markers.setMap (карта);

по

marker.setMap (карта);

... тогда это сработает!

0 голосов
/ 23 марта 2012

Я использую jQuery для получения файла XML, а затем для его анализа. Я использовал этот подход много раз, но у меня нет времени на его тестирование, поэтому возможны синтаксические ошибки.

<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
...
var map;
function init() 
{
    map = new google.maps.Map("map_canvas");
    jQuery.get("companies.xml", {}, function(data) {
        jQuery(data).find("company").each(function() {
            var company = jQuery(this);
            var lat = jQuery(company).find("lat").text();
            var lon = jQuery(company).find("lng").text();
            var latlng = new google.maps.LatLng( parseFloat(lat), parseFloat(lon) );
            var marker = new google.maps.Marker( { position: latlng, }); 
            markers.setMap(map);
        }); 
    }); 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...