当前位置:首页 > 开发 > Web前端 > Ajax > 正文

ajax同步异步参数async

发表于: 2014-02-08   作者:bijian1013   来源:转载   浏览:
摘要:         开发项目开发过程中,需要将ajax的返回值赋到全局变量中,然后在该页面其他地方引用,因为ajax异步的原因一直无法成功,需将async:false,使其变成同步的。         格式: $.ajax({ type: 'POST', ur

        开发项目开发过程中,需要将ajax的返回值赋到全局变量中,然后在该页面其他地方引用,因为ajax异步的原因一直无法成功,需将async:false,使其变成同步的。

        格式:

$.ajax({ type: 'POST', url: httpUrl, data: JSON.stringify(params), 
contentType: 'application/json', async: false, success: function(data){…},error:function(data){…}});

        实例:

$.ajax({
	type:"post",
	url:"getSwitch.do",
	data:data,
	async:false,
	success:function(data){
		//登陆超时的处理
		if(data=="timeout"){logoutFun();}
		if(data.split(",")[0]=="Y"){
			var network=$("#network option:selected").val();
			if(network == undefined || null==network || network == "") {
				temp = true;
			}
		}
	},
	error: function(d){
		if(d.responseText=="timeout"){logoutFun();temp= true;}
   		alert("请求失败,可能是服务器或网络异常。");
   }
});

        总结一下:

1.ajax默认所有请求都是设置为异步的,如果需要同步,则设为false

2.如果请求是异步的,不能在回调之外直接拿到返回的data

3.如果设为同步的话,会阻塞后面的代码,也就是说如果这个请求需要执行30秒,就必须等30秒执行完之后,才能继续执行下面的

4.同步不支持跨域请求和数据类型:’jsonp'请求

5.如果将请求设置为同步的话,则不支持延迟方法,不能使用延迟方法$.Deferred,只能使用success/error/complete来代替比如deferred.always()/$.when等方法

ajax同步异步参数async

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
推荐四篇文章: JavaScript 是单线程的深入分析 JavaScript 运行机制详解:再谈 Event Loop JavaScr
为了适应异步编程,减少回调的嵌套,我在项目中引入了Async,当批量处理且需要同步执行一些逻辑相同
ajax同步与异步 前言   公司做网上促销活动,需要充值换取相应的抽奖资格,抽奖可以获得丰厚的礼
之前做项目中有遇到就是Ajax的同步与异步的问题,由于Ajax的async默认的设置值为true,属于异步。这
async/await 是我们在 ASP.NET 应用程序中,写异步代码最常用的两个关键字,使用它俩,我们不需要考
问题描述: 在做项目的过程中,碰到了如下一个问题,花了我两天的时间、、、⊙﹏⊙b汗 问题起因:由
http://cnn237111.blog.51cto.com/2359144/1038080 jquery中默认的ajax调用方法是异步的,因此稍不
曾经在博客中写过关于Ajax的三篇博客, 主要是介绍了什么是AJAX, AJAX的核心对象以及工作原理, 以及A
此理解范例代码来自前几篇随笔! 首先我们来先了解下AJAX: Ajax:全称“Asynchronous Javascript an
前言   公司做网上促销活动,需要充值换取相应的抽奖资格,抽奖可以获得丰厚的礼品,而且抽奖资格
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号