2011-05-26 49 views
0

我使用jquery獲取在線xml數據。爲了獲取在線信息,我正在起訴ph。和我使用$獲取函數像這樣的發送信息:jquery xml數據重試問題ie

var timeObject = { 
       getNewYorkLocalTime : 'getTime.php?lat=40.7143528&lan=-74.0059731', 
       getLondonLocalTime : 'getTime.php?lat=51.5001524&lan=-0.1262362', 
       getChennaiLocalTime : 'getTime.php?lat=13.060422&lan=80.249583', 
       getBangaloreLocalTime:'getTime.php?lat=12.9715987&lan=77.5945627' 
       } 

      var i = 0; 

      for(var x in timeObject){ 
       if(timeObject.hasOwnProperty(x)){ 

        var cityTime = timeObject[x]; 

        $.get(cityTime, function(data) { 
         var myDate = $(data).find('localtime').text(); 
         var cityId = parseInt($(data).find('latitude').text()); 
         var time = new Date(myDate); 
         var hours = time.getHours(); 
         var minutes = time.getMinutes(); 
         var seconds = time.getSeconds(); 
         hours = hours > 12 ? hours - 12 : hours; 
         alert(data); 
         i++; 
         var num = i; 
         showTime (num,cityId,hours,minutes,seconds);  

        }); 



      } 
     } 

例如,萬一要是我警惕得到「cityId」,指明MyDate,我得到了答案。但Internet Explorer顯示空白。任何人都可以告訴我我的代碼有什麼問題?或以任何方式解決這個問題?

注意:如果我只是提醒'數據'我得到的XML信息。

回答

0

確保在發回響應時將內容類型設置爲「text/xml」。如果內容類型設置不正確,IE知道忽略xml。

使用以下內容來識別您當前的內容類型。請確保它是爲「text/xml」的

getResponseHeader("Content-Type") 

在PHP中添加以下你發回的響應之前。

HttpResponse::setContentType ("text/xml"); 

將「xml」作爲數據類型添加到作爲最後一個參數的「get」方法中。

$.get(cityTime, function(data) { 
         ...... //removed other code for ease of readability 

        }, "xml"); 

閱讀上這些人,
http://api.jquery.com/jQuery.get
http://php.net/manual/en/function.httpresponse-setcontenttype.php

+0

任何示例代碼嗎? – 3gwebtrain 2011-05-26 12:51:19

+0

@ 3gwebtrain用一些源代碼編輯了我的答案。 – 2011-05-26 13:24:30