首页 > 开发 > AJAX > 正文

js与jQuery终止正在发送的ajax请求的方法

2024-09-01 08:28:15
字体:
来源:转载
供稿:网友

本文实例讲述了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程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表