使用xml将标记添加到谷歌地图

时间:2014-01-03 12:50:34

标签: jquery xml

我尝试在googlemaps上添加标记,同时使用XML文件中的jQuery获取数据 但是标记不会出现

单击单选按钮时调用的功能

 Route 1  <input type="radio" value="route1" name="1" onclick="addMarker();"/><br>

添加市场功能

function addMarker() {
    $.ajax({
        type: "GET",
        url: "stationx.xml",
        dataType: "xml",
        success: function(data) {
            $(data).find('station').each(function() {
                var name = $(this).find('name').text();
                var lat = $(this).find('lat').text();
                var lon = $(this).find('lon').text();
            });
        }
    });
    marker = new google.maps.Marker({
        position: new google.maps.LatLng("lat", "lon"),
        title: "Pittsburg/Bay Point"
    });
    marker.setMap(map);
}

这是XML文件&#34; stationx.xml&#34;

<stations>
<station>
<name>12th St. Oakland City Center</name>

<lat>37.803664</lat>
<lon>-122.271604</lon>

</station>
<station>
<name>16th St. Mission</name>

<lat>37.765062</lat>
<lon>-122.419694</lon>

</station>
</stations>

1 个答案:

答案 0 :(得分:1)

您需要移动逻辑以将标记添加到您的工作站循环中。您应该使用变量而不仅仅是文本字符串"lon" vs lon

success: function(data) {
            $(data).find('station').each(function() {
                var name = $(this).find('name').text();
                var lat = $(this).find('lat').text();
                var lon = $(this).find('lon').text();
                marker = new google.maps.Marker({
                  position: new google.maps.LatLng(lat, lon),
                  title: name
               });
               marker.setMap(map);
            });
        }