2014-09-24 185 views
0

我有一個以下的JQuery塊。它讀取XML並讀取內容並在成功時顯示如下內容:JQuery加載失敗隨機

<script src="/JS/jQuery-1.11.1.js" type="text/javascript"> 
    <script language="javascript" type="text/javascript">//<![CDATA[ 
    $(document).ready(function (e) { 
     $.ajax({ 
      type: "GET", 
      url: "http://www.servername.com/help/timht.xml", 
      dataType: "xml", 
      success: function (xml) { 
       //do something 
       alert('xml loaded successfully'); 
      }, //end success 
      error: function() { 
       alert('failed to load xml'); 
      } 
     }); //end .ajax 
    }); 
    //]]></script> 

它很簡單。當頁面加載時,彈出的失敗隨機顯示。我不知道在加載timht.xml文件時是什麼導致了這個問題。 xml文件本身很小(大約10kb)。

有什麼想法嗎?

感謝 JPL

+1

你似乎有一個額外的}); ('xml loaded ... – artm 2014-09-24 19:31:05

+0

對不起,artm,我刪除了該塊中的某些東西,並忘記刪除額外的});如你所說。已編輯.... – JPL 2014-09-24 19:48:50

+0

xml是否與此腳本位於同一個域中?如果不是那就是它失敗的原因。 – Archer 2014-09-24 19:55:20

回答

0

事實證明,後面的F5負載均衡的網站。 F5後面有5個Web服務器。更新所有5個確實解決了問題。

有時,它不僅僅是代碼本身,服務器環境。花費我們很多努力! :)

謝謝大家的意見。非常感激。

0

你設置錯誤處理程序函數接受三個參數, http://api.jquery.com/jquery.ajax/ (介意討論了錯誤處理的部分)。 第二個參數是錯誤字符串。

所以,與其

... 
error:function() { 
... 

使用

... 
error:function(xhrObj, errorstr){ 
    alert('failed to load xml due to '+errorstr); 
} 
... 
+0

謝謝Andrija,跟隨你的,這裏是我(隨機):「由於錯誤加載xml失敗」消息!不會告訴詳細的錯誤。 – JPL 2014-09-24 19:57:43

+1

@JPL xhrObj對象有時還有其他數據,請檢查其 狀態 statusText responseXML和/或responseText屬性。 http://api.jquery.com/jQuery.ajax/#jqXHR – artm 2014-09-24 20:00:21