DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> AJAX入門 >> AJAX基礎知識 >> js與jQuery終止正在發送的ajax請求的方法
js與jQuery終止正在發送的ajax請求的方法
編輯:AJAX基礎知識     

本文實例講述了js與jQuery終止正在發送的ajax請求的方法。分享給大家供大家參考,具體如下:

核心:調用XMLHttpRequest對象上的abort方法

jquery的ajax方法有自己的超時時間設置參數:

$.ajax({type:'POST',
  url:'b.php',
  data:'',
  timeout:5000,
  success:function(){
  }
})

同時

1. $.get返回的數據類型是XMLHttpRequest,請參考手冊。($.post、$.ajax、$.getJSON、$.getScript也同樣)

2. XMLHttpRequest對象有abort()方法

也可以自己手動去調用abort方法:

<script src = "jquery-1.4.4.js"></script>
<script>
var xhr = $.ajax({type:'POST',
  url:'b.php',
  data:'',
  success:function(){
    alert('ok');
  }
})
alert(xhr);
console.log(xhr);
</script>
<button id="song">abort</button>
<script>
$(function(){
  $("#song").click(function(){
    alert('click');
    xhr.abort();
  })
})
</script>

對於原生的xhr:

xmlHttp.open("POST","theUrl",true);
xmlHttp.onreadystatechange=function(){
  ...//得到響應之後的操作
}
xmlHttp.send();
//設置8秒鐘後檢查xmlHttp對象所發送的數據是否得到響應.
setTimeout("CheckRequest()","8000");
function CheckRequest(){
  //為4時代表請求完成了  
  if(xmlHttp.readyState!=4){
    alert('響應超時');
    //關閉請求
    xmlHttp.close();
  }
}

希望本文所述對大家ajax程序設計有所幫助。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved