$(function(){
//设置全局 jQuery Ajax全局参数
$.ajaxSetup({
type:"POST",
async:false,
cache:false,
dataType:"JSON",
error:function(jqXHR,textStatus,errorThrown){
switch(jqXHR.status){
case(500):
alert('服务器系统内部错误');
break;
case(401):
alert('未登录');
break;
case(403):
alert("无权限执行此操作");
break;
case(408):
alert("请求超时");
break;
default:
alert("未知错误");
}
},
success:function(data){
alert('操作成功!');
}
})
})

当设置该属性后,在其他jQuery没有设置的ajax中,默认使用该设置。

.ajaxStart()

  在ajax请求刚开始时执行一个处理函数。

  每当一个ajax请求即将发送,jQuery检查是否有任何其他响应过程中的ajax请求(注:未完成的请求)。如果没有检查到,jQuery就会触发ajaxStart事件,在这个时间点所有处理函数都会使用.ajaxStart()方法注册并执行。

请注意以下代码的执行结果:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
</head>
<body>
<div class="trigger">Trigger</div>
<div class="result"></div>
<div class="log"></div>
<script>
$(document).ajaxStart(function(){
$('.log').text("Trigger ajaxStart handler.");
console.log(1);
});
$('.trigger').click(function(e){
console.log(2);
$('.result').load('ajax/test.html');
});
$(document).ajaxSuccess(function(e){
console.log(31);
});
$(function(){
//设置全局 jQuery Ajax全局参数
$.ajaxSetup({
type:"POST",
async:false,
cache:false,
dataType:"JSON",
beforeSend:function(){
console.log(4)
},
error:function(jqXHR,textStatus,errorThrown) {
switch (jqXHR.status) {
case(500):
alert('服务器系统内部错误');
break;
case(401):
alert('未登录');
break;
case(403):
alert("无权限执行此操作");
break;
case(408):
alert("请求超时");
break;
case(404):
alert('地址错误');
break;
default:
alert("未知错误");
}
},
success:function(data){
//alert('操作成功!');
console.log(3);
}
})
})
</script>
</body>
</html>

  运行结果:

        

也就是说方法调用顺序如下:

  ajax请求代码之前的代码

  ajaxStart

  beforeSend

  success

  ajaxSuccess

https://blog.csdn.net/zhao1949/article/details/52787124

  jQuery中各个事件的执行顺序如下:

    1.ajaxStart (全局事件)

     2.beforeSend

     3.success

    4.ajaxSuccess

    5.error

    6.ajaxError (全局事件)

    7.complete

    8.complete

    9.ajaxComplete (全局事件)

    10.ajaxStop (全局事件)

先执行success,再执行error???,最后始终执行complete

  区别是:

    success:当请求成功时调用函数,即status==200

    complete:当请求完成时调用函数,即status==404、403、302……只要不出错就行。

    因为通常我们需要用来清理资源,所以就设计成complete在success之后执行。

ajax设置默认值ajaxSetup()方法的更多相关文章

  1. Java连载42-this不能省略的情况、构造方法设置默认值的方法

    一. this什么时候是不能省略的,我们举个例子来说明 class User2{ private int id; public int getId() { return id; } public vo ...

  2. oracle设置默认值无效

    一次做农行的项目,在向一个表插入数据时我们要求插入字符类型的操作日期和时间,我们这边当时采取的是给日期和时间字段设置默认值的方法:下面我简单还原一下当时的表结构 -- Create table cre ...

  3. MySQL设置当前时间为默认值的方法

    方法一.是用alert table语句: 复制代码代码如下: use test_db1; create table test_ta1( id mediumint(8) unsigned not nul ...

  4. select2 取值 遍历 设置默认值

    select2 取值 遍历 设置默认值 本章内容主要介绍Select2 的初始化,获取选中值,设置默认值,三个方法.Select2 美化了单选框,复选框和下拉框,特别是下拉框多选的问题.但同时,Sel ...

  5. select2 插件编辑时设置默认值

    function htDate(selectCustomerId, val) { var customerId = selectCustomerId; var values = val; ajaxJs ...

  6. 《Entity Framework 6 Recipes》中文翻译系列 (14) -----第三章 查询之查询中设置默认值和存储过程返回多结果集

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 3-6在查询中设置默认值 问题 你有这样一个用例,当查询返回null值时,给相应属性 ...

  7. java 反射: 当Timestamp类型的属性值为null时,设置默认值

    import java.beans.PropertyDescriptor; import java.lang.reflect.Field; import java.lang.reflect.Metho ...

  8. (转)js函数参数设置默认值

    原文:http://www.cnblogs.com/RightDear/archive/2013/06/26/3156652.html js函数参数设置默认值   php有个很方便的用法是在定义函数时 ...

  9. Extjs combobox设置默认值

    转载:http://www.54mask.com/extjs-combobox-default-value.html 相信很多人都遇到了在ExtJS框架中设置combo组件默认值的需求,ExtJS框架 ...

随机推荐

  1. 利用ENVI FX从RGB提取建筑物轮廓

        在QQ热线或者技术咨询会问到:"我有一副RGB的栅格图,想从上面提取相关的一些信息.能不能提取?精度有保证吗?"等等诸如此类的问题.本专题就採用我们经常使用的栅格地图进行建 ...

  2. 编程&学习总结格式

    编程&学习总结格式 一.本周完成的作业: 题目1.A乘以B 题目内容描述:看我没骗你吧 -- 这是一道你可以在10秒内完成的题:给定两个绝对值不超过100的整数A和B,输出A乘以B的值. 1) ...

  3. Java IO(二)——RandomAccessFile

    一.RandomAccessFile RandomAccessFile类可以说是Java语言中功能最为丰富的文件访问类,它提供了众多的文件访问方法.RandomAccessFile类支持"随 ...

  4. PHP创建socket服务

    PHP可以创建socket服务. 先熟悉几个php网络方面的函数,操作手册地址  http://php.net/manual/zh/ref.sockets.php 简单介绍下socket,它表示套接字 ...

  5. Elastic 今日在纽交所上市,股价最高暴涨122%。

    10 月 6 日,Elastic 正式在纽约证券交易所上市,股票代码为"ESTC".开盘之后股价直线拉升,最高点涨幅达122%,截止到收盘涨幅回落到94%,意味着上市第一天估值接近 ...

  6. 第一次在新西兰组织技术社区活动:Monkeyfest2018

    从3月份登陆到现在,转眼间已经8个月了.在6个月的时候我就想写篇文总结下近期的一些状况,一直拖到现在.因为近期一直在筹备我第一次社区活动——Monkeyfest 2018,占用了比较多的时间.这是一个 ...

  7. OSGI 环境搭建

    第一步,打开eclipse,新建一个plugin工程,如下图所示 第二步,输入工程的名字,并且在Target Platform中选择an OSGI framework中选中standard,如下图所示 ...

  8. i++ 相比 ++i 哪个更高效?为什么?

    ++i的效率高些,++i在运算过程中不产生临时对象,返回的就是i,是个左值,类似++i=1这样的表达式是合法的,而i++在运算的过程中会产生临时对象,返回的是零时对象的值,是个右值,像i++=1这样的 ...

  9. 浅谈一类无关序列有前缀和性质的统计问题的离线解法 BZOJ3626

    每次询问[l,r]区间,但所有信息是按另一种序列给出的,因此无法使用区间数据结构做这种题.将每个询问改为[1,x],考虑离线,则从1~n依次修改并查询即可. BZOJ3626 给定一颗树,每次询问给定 ...

  10. Sampling Matrix

    这些天看了一些关于采样矩阵(大概是这么翻译的)的论文,简单做个总结. FAST MONTE CARLO ALGORITHMS FOR MATRICES I: APPROXIMATING MATRIX ...