2011-08-22 154 views
-1

這是在Drupal網站的內部。我使用以下代碼使用GDownloadUrl發送了一個Ajax請求。我從谷歌地圖的JavaScript API版本2此GDownloadurl方法:GDownloadUrl在Chrome上不能正常工作

GDownloadUrl(down_load_url, function(data) { 
    var xml = GXml.parse(data); 
}); 

down_load_url具有請求和數據變量將得到的迴應爲XML。

但是,在Chrome中,此數據變量不包含任何內容。在其他瀏覽器中,該功能可以正確地獲取請求的數據。 Chrome有什麼問題?

回答

2

這位先生使用的GDownloadUrl在一個例子:http://googlemapsapi.blogspot.com/2007/02/gdownloadurl-update-better-error.html

你可以嘗試添加responseCode參數到您的回調函數,看看Chrome是否示數是出於某種原因。此示例適用於我的Chrome版本,因此請確保您正在運行最新版本。

這裏是他的代碼示例:

function load() { 
    if (GBrowserIsCompatible()) { 
    var map = new GMap2(document.getElementById("map")); 
    map.addControl(new GSmallMapControl()); 
    map.addControl(new GMapTypeControl()); 
    map.setCenter(new GLatLng(37.4419, -122.1419), 13); 

    // Download the data in data.xml and load it on the map. The format we 
    // expect is: 
    // <markers> 
    // <marker lat="37.441" lng="-122.141"/> 
    // <marker lat="37.322" lng="-121.213"/> 
    // </markers> 
    GDownloadUrl("data.xml", function(data, responseCode) { 
     // To ensure against HTTP errors that result in null or bad data, 
     // always check status code is equal to 200 before processing the data 
     if(responseCode == 200) { 
     var xml = GXml.parse(data); 
     var markers = xml.documentElement.getElementsByTagName("marker"); 
     for (var i = 0; i < markers.length; i++) { 
      var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")), 
           parseFloat(markers[i].getAttribute("lng"))); 
      map.addOverlay(new GMarker(point)); 
    } 
     } else if(responseCode == -1) { 
    alert("Data request timed out. Please try later."); 
     } else { 
     alert("Request resulted in error. Check XML file is retrievable."); 
     } 
    }); 
    } 
} 
+0

:感謝reply.using你的代碼我陷入別人condition.that是我得到一個警告,告訴「請求導致錯誤檢查XML文件檢索」 .still我沒有得到什麼錯誤發生在here.please你能幫我嗎。謝謝 – lakshman

+0

嘿再次感謝。問題是sloved.using你的代碼我檢測到響應code.it是0.響應爲零的原因之一代碼是「在防火牆上」。關閉我的Windows和卡巴斯基防火牆後,我得到了所需的結果。謝謝 – lakshman

相關問題