0

我正在尝试使用 ajax 和 php 的组合动态地将标记添加到我的 Google 地图中。代码的第一部分将 latlng 发送到 php 文件。然后 php 文件返回所需的标记位置。

当我提醒返回部分(ALERT TEST TO ENSURE PHP PROCESSED DATA FORCORRECTLY)时,它看起来不错,但我似乎无法将返回中的标记添加到我的地图上。

请参阅下面的代码。
//SEND DATA TO URL (send to php file) //RETURN DATA FOR PLACE MARKERS (这是返回 php 文件产生的)

非常感谢,

//发送数据到URL

     var xmlHttp = getXMLHttp();
     xmlHttp.onreadystatechange = function() {
     if (xmlHttp.readyState == 4) {
     HandleResponse(xmlHttp.responseText);
     }}                     
     xmlHttp.open("POST",'MYPHPFILE',true);
     xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
     xmlHttp.send("LATLON="+strLAT);

//返回位置标记的数据

     var wxlatlng = new google.maps.LatLng(52,1); 
     var marker = new google.maps.Marker({ 
     position: wxlatlng,
     map: map,
     icon: '../../icons/flags/traffic_light_red.png',
     title: 'TEST', });

//返回位置标记的数据

     var wxlatlng = new google.maps.LatLng(52,1.1); 
     var marker = new google.maps.Marker({ 
     position: wxlatlng,
     map: map,
     icon: '../../icons/flags/traffic_light_red.png',
     title: 'TEST', });

//警报测试以确保 PHP 正确处理数据

     function HandleResponse(response) {
            document.getElementById('ResponseDiv').innerHTML = response;
            alert($('#ResponseDiv').text());
        }                           
4

1 回答 1

0

我为我的问题找到的答案是使用 php 文件创建标记 xml 文件并通过 jQuery 响应加载 xml 文件

请参阅下面的代码;

 jQuery.get(YOURXMLFILE, function(data) {
       jQuery(data).find("marker").each(function() {
       var eachMarker = jQuery(this);
       var markerCoords = new google.maps.LatLng(
       parseFloat(eachMarker.find("Lat").text()),
       parseFloat(eachMarker.find("Lng").text())
       );
       var header  = eachMarker.find("title").text();
       var content = eachMarker.find("Content").text();
       var wxicon  = eachMarker.find("icon").text();
       //--------------------------------------------------------------------------        
        marker = new google.maps.Marker({
        position: markerCoords,
        icon: wxicon,
        map: map,
        animation: google.maps.Animation.DROP,
        title: header,
        });
        });
        }); 
于 2013-03-22T11:52:56.720 回答