$.ajax({})方法success,error,complete,beforeSend使用例子及解释
在与后台交互的时候,经常使用到jquery的$.ajax()方法来请求数据;
回调函数用的比较多的是success,但是complete、beforeSend、error函数也是很有用的;
下面是使用例子小结:
html代码:
- <!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 type="text/javascript" src="jquery.min.js"></script>
- <script type="text/javascript" src="bootstrap.min.js"></script>
- <script type="text/javascript">
js代码:
- <script type="text/javascript">
- function getData(){
- $.ajax({
- url:'http://192.168.31.227/sfytjjk/wdaj/wdla.php',
- type:"post",
- timeout:5000,
- async:true,
- cache:true,
- data:"user_id=12&page=0",
- 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.data.all_count);
- $("#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>
原文链接:http://blog.csdn.net/qq_30337695/article/details/51373727
随机推荐
- ajaxfileupload 实现多文件上传
官网下载ajaxfileupload.js: 修改源码: jQuery.extend({ createUploadIframe: function(id, uri) { //create frame ...
- .NET基础——方法
这一篇,我们来学习C#中的方法——函数 1. 方法的功能 方法的功能:用来复用代码的,当我们在一个程序中反复的写了同样的代码,我们就可以把需要重复写的代码定义在一个方法中,用到的时候只需要调用就可 ...
- 背水一战 Windows 10 (39) - 控件(布局类): VariableSizedWrapGrid, Border, Viewbox, SplitView
[源码下载] 背水一战 Windows 10 (39) - 控件(布局类): VariableSizedWrapGrid, Border, Viewbox, SplitView 作者:webabcd ...
- oracle数据库连接串格式
oracle常用链接串格式:jdbc:oracle:thin:@//<host>:<port>/<service_name> jdbc:oracle:thin:@& ...
- CFRound#379(div2)
题目链接:http://codeforces.com/contest/734 A:SB题. #include<cstdio> #include<cstring> #includ ...
- c++ 常见问题之 vector 和数组
初始化vector 对象: vector<T> v1 v1 为空vector vector<T> v2(v1) vector<T> v2 = v1 vector&l ...
- kworker
通过 ps 命令查看进程状态时,可以查看到kworker相关, 大部分格式都是 kworker /u2:0 或者 kworker /0:0H, 查看资料得知: 内核中有很多kworker,有绑定c ...
- Zabbix 中文使用手册
一.Zabbix简介 详情参考"企业监控利器-zabbix"http://waringid.blog.51cto.com/65148/904201. 二.Zabbix使用 2.1 ...
- 修改searchBar的返回按钮的显示文字
#pragma mark 搜索框的代理方法,搜索输入框获得焦点(聚焦) - (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar { ...
- CentOS6.5 部署VPN管理系统(StrongSwan+iKEv2+Freeradiu+Mysql+Daloradius)
一.环境介绍 Server IP:192.168.30.133 System: CentOS 6.5 Client:Winodows 二.编译安装StrongSwan 1.下载StrongSwan w ...