簡體   English   中英

如果頁面重定向/重新加載,則將jquery.ajax設置為async = true以將數據發送回服務器不起作用

[英]jquery.ajax set with async=true to send data back to server not working if page redirects/reloads

我試圖使用jquery.ajax (使用Asp.net 3.5)單擊按鈕/超鏈接時保存一些內容。 邏輯如下:

  • 通過jquery中的.bind ,我將自己的方法( MakeLog )綁定到按鈕單擊或超鏈接單擊。 按鈕/超鏈接的單擊事件不包含任何內容,我需要使用.bind進行選擇性控制。
  • 現在我們有一個按鈕,其click事件將觸發一個方法,例如MakeLog
  • MakeLog代碼段如下:

var xhr = jQuery.ajax({  
    url: "/Logger.aspx",  
    data: { content: logContent },  
    error: function(XmlHttpRequest, textStatus, errorThrown) {
        alert ("XmlHttpRequest: " +   XmlHttpRequest + 
               " textStatus: " + textStatus + "errorThrown: " + 
               errorThrown);
    },
    contentType: "Content-Type: text/html; charset=utf-8",  
    success: function (xml, txtStatus, XmlHttpRequest) {  
       //alert("xml" + XmlHttpRequest);  
    },  
    async: true  
});  
  • 這在IE中可以正常工作,但在Firefox中卻無法如預期那樣將數據發送回去。
  • 我試圖找出問題並遇到以下問題: jQuery ajax調用async:false vs async:true
  • 我的理解是,每當頁面由於按鈕單擊或超鏈接單擊而被重定向/重新加載時,異步調用均無法正常工作。

這聽起來像我在AJAX事件記錄中遇到的類似問題。 這可以通過JavaScript加載像素圖像來解決。 原因是頁面加載中斷XmlHttp請求(您的AJAX調用)。 但是,加載圖像不會被頁面加載中斷。

請參閱以下我先前發布的問題以供參考: AJAX GET競爭條件?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM