监听ajax请求完成
来源:互联网 发布:qt编程入门 书籍 编辑:程序博客网 时间:2024/06/10 02:53
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ajax_demo</title>
</head>
<style>
.display{
width:600px;
height: 400px;
border:1px solid;
}
</style>
<body>
<div class="box">展示数据区域:</div>
<div class="display"/></div>
<input type="button" value="点击获取数据" id="inp" onclick="getData
()"/>
<script src="js/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="bootstrap.min.js"></script>
<script type="text/javascript">
function getData(){
$.ajax({
url:'url接口',
type:"post",
timeout:5000,
async:true,
cache:true,
data:{参数},
dataType:"json",
//contentType:"application/x-www-form-urlencoded",
beforeSend:function(XMLHttpRequest){
console.log(this);
$("#inp").val("正在获取数据...");
},
success:function(data){
console.log(data);
$(".display").html("获取到的数据:</br>");
$(".display").append("总条数:"+data.V);
$("#inp").val("点击获取数据");
},
complete:function(XMLHttpRequest,textStatus){
if(textStatus=='timeout'){
var xmlhttp = window.XMLHttpRequest ? new
window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHttp");
xmlhttp.abort();
$(".box").html("网络超时!");
}
$("#inp").val("获取完成");
},
error:function(XMLHttpRequest, textStatus){
console.log(XMLHttpRequest);
//XMLHttpRequest.responseText XMLHttpRequest.status
XMLHttpRequest.readyState
console.log(textStatus);
$(".box").html("服务器错误!");
}
});
/*
通过捕捉error事件来获取出错的信息:
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
XMLHttpRequest.readyState: 状态码的意思
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
status:返回的HTTP状态码,比如常见的404,500等错误代码。
statusText:对应状态码的错误信息,比如404错误信息是not found,500是
Internal Server Error。
responseText :服务器响应返回的文本信息
complete: function (XMLHttpRequest, textStatus) {
//textStatus的值:
success,notmodified,nocontent,error,timeout,abort,parsererror
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
//textStatus的值:null, timeout, error, abort, parsererror
//errorThrown的值:收到http出错文本,如 Not Found 或 Internal
Server Error.
}
*/
}
</script>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>ajax_demo</title>
</head>
<style>
.display{
width:600px;
height: 400px;
border:1px solid;
}
</style>
<body>
<div class="box">展示数据区域:</div>
<div class="display"/></div>
<input type="button" value="点击获取数据" id="inp" onclick="getData
()"/>
<script src="js/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="bootstrap.min.js"></script>
<script type="text/javascript">
function getData(){
$.ajax({
url:'url接口',
type:"post",
timeout:5000,
async:true,
cache:true,
data:{参数},
dataType:"json",
//contentType:"application/x-www-form-urlencoded",
beforeSend:function(XMLHttpRequest){
console.log(this);
$("#inp").val("正在获取数据...");
},
success:function(data){
console.log(data);
$(".display").html("获取到的数据:</br>");
$(".display").append("总条数:"+data.V);
$("#inp").val("点击获取数据");
},
complete:function(XMLHttpRequest,textStatus){
if(textStatus=='timeout'){
var xmlhttp = window.XMLHttpRequest ? new
window.XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHttp");
xmlhttp.abort();
$(".box").html("网络超时!");
}
$("#inp").val("获取完成");
},
error:function(XMLHttpRequest, textStatus){
console.log(XMLHttpRequest);
//XMLHttpRequest.responseText XMLHttpRequest.status
XMLHttpRequest.readyState
console.log(textStatus);
$(".box").html("服务器错误!");
}
});
/*
通过捕捉error事件来获取出错的信息:
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
XMLHttpRequest.readyState: 状态码的意思
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
status:返回的HTTP状态码,比如常见的404,500等错误代码。
statusText:对应状态码的错误信息,比如404错误信息是not found,500是
Internal Server Error。
responseText :服务器响应返回的文本信息
complete: function (XMLHttpRequest, textStatus) {
//textStatus的值:
success,notmodified,nocontent,error,timeout,abort,parsererror
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
//textStatus的值:null, timeout, error, abort, parsererror
//errorThrown的值:收到http出错文本,如 Not Found 或 Internal
Server Error.
}
*/
}
</script>
阅读全文
0 0
- 监听ajax请求完成
- UIWebView监听ajax请求
- 使用mui.ajax完成跨域请求
- 重写ajax,实现请求加载中,请求完成隐藏
- 用javascript监听页面上的所有ajax请求
- 对页面上所有ajax的请求进行监听
- 同时三个AJAX请求完成后,再做一件事。
- Java——Ajax+Tomcat完成异步请求
- vue中选择 axios 来完成 ajax 请求。
- ajax 请求同步执行 等完成了ajax请求 才可以继续后面操作
- 使用ajax发起一个请求完成之后再发起另一个请求
- 监听webview 加载完成
- 监听iframe加载完成
- Edittext 监听输入完成
- 【JavaScript】AJAX之异步同步请求、FormData类型、事件监听接口
- Ajax发送同步请求给Spring,通过controller处理完成后如何返回响应
- jQuery中的Ajax实现跨域请求,完成同源策略问题
- AJAX请求
- oracle 层次查询
- 问题集锦
- log4j.properties 的配置详解
- 一颗璀璨的月光宝石--Lua
- TreeSet判断重复元素
- 监听ajax请求完成
- TensorFlow官方文档中文版-笔记(七)
- PTA C实验5 7-7 计算天数
- nginx负载均衡策略
- 全能电子地图下载器 破解版 亲测可用
- webservice XML实体注入漏洞解决方案
- C++11新特性学习笔记—long long
- webpack 编译sass异常
- SSM项目中怎么去一个时间段