`

ajax同步异步参数async

阅读更多

        开发项目开发过程中,需要将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等方法

分享到:
评论

相关推荐

    jQuery中的ajax async同步和异步详解

    在本文中,我们将详细讲解在jQuery的ajax方法中如何使用async参数控制请求是同步还是异步。 首先,我们需要理解什么是同步和异步请求。异步请求是指当一个请求发送给服务器后,浏览器不会等待服务器的响应,而是...

    jquery ajax 同步异步的执行 return值不能取得的解决方案

    通过将AJAX请求设置为同步模式,即在$.ajax()方法中设置async为false,这样可以确保AJAX请求在函数返回之前完成。代码示例如下: ```javascript function getAjaxReturn() { var bol = false; $.ajax({ type: ...

    关于解决jquery同步异步的问题

    ### 关于解决jQuery同步异步的问题 在前端开发过程中,我们经常会使用到jQuery库来进行DOM操作及Ajax请求等。而在处理Ajax请求时,默认情况下jQuery的`$.ajax()`方法是采用异步的方式执行的,这对于大部分场景来说...

    ExtJs Ajax 同步问题

    然而,有时我们可能会遇到Ajax同步问题,这通常是由于对异步和同步理解不透彻或者配置不当导致的。下面我们将详细探讨这个问题。 在ExtJS中,Ajax请求主要通过`Ext.Ajax`对象来实现。`Ext.Ajax.request()`方法是...

    ajax同步异步简单实现

    在文章中提到了同步AJAX的实现方式,通过设置XMLHttpRequest对象的async属性为false,即可使AJAX请求同步执行。代码示例中,$.ajax()函数是jQuery提供的一个用来处理AJAX请求的方法,而async:false的设置就表明这个...

    extjs ajax同步请求所需js

    标题中提到的"extjs ajax同步请求所需js"是指ExtJS框架中用于执行同步Ajax请求的相关JavaScript代码。在ExtJS中,Ajax请求通常通过`Ext.Ajax`对象来实现。与传统的异步请求不同,同步请求会阻塞浏览器,直到请求完成...

    jquery封装下的ajax同步加载代码实例

    以下是对"jquery封装下的ajax同步加载代码实例"的详细解释: 首先,jQuery的$.ajax()函数是进行AJAX请求的核心方法。这个函数接受一个包含多个选项的对象作为参数,用于定制请求的各个方面。在这个实例中,我们将...

    浅谈Jquery中Ajax异步请求中的async参数的作用

    async参数决定了Ajax请求是否为异步执行,即是否允许后续代码在Ajax请求还未完成时就执行。async参数是可选的,默认值为true,表示请求是异步进行的。若将async设置为false,则Ajax请求变为同步,浏览器会等待服务器...

    ajax00009_async_trigger

    对于性能,可以考虑使用Promise或async/await来处理异步流程,使代码更易读,同时考虑使用Ajax的中断和取消机制来优化资源利用。 总之,"ajax00009_async_trigger"是一个解决Get请求缓存问题的Ajax框架,通过某种...

    ajax异步提交表单

    `async: false`表示此AJAX请求为同步请求。同步请求会阻塞浏览器直到请求完成,这可能会影响用户体验。通常推荐使用默认的异步模式(即`async: true`),除非有特殊需求。 ##### 5.5 成功回调 `success: function...

    extjs3.0 ajax 同步请求

    ### ExtJS 3.0 AJAX 同步请求详解 #### 一、引言 ...随着技术的发展,现代前端框架如 React、Vue 等已经很少使用同步 AJAX 请求,取而代之的是更高效的异步编程模式,如 Promise 和 async/await。

    Java通过jQuery实现ajax异步请求

    4. **异步与同步**:AJAX的核心特性是异步,意味着请求不会阻塞页面的其他操作。通过设置`async: true`(默认值),可以确保请求在后台执行。如果需要等待请求完成再进行后续操作,可以使用`async: false`,但这会...

    ajax参数详解

    async参数设置请求是否为异步模式,默认值是true,表示请求是异步的。如果是false,则请求为同步,同步请求会锁定浏览器,直到请求完成用户才能进行其他操作。 cache参数控制请求是否从浏览器缓存中加载信息。默认...

    Ajax同步和异步问题浅析及解决方法

    ### 解决同步异步问题 #### 方案一:回调函数 当需要在数据返回后执行特定操作时,可以将这部分代码放入回调函数中。例如: ```javascript $.getJSON("/data-access/sens-config/IPandPortSel", {}, function...

    细数Ajax请求中的async:false和async:true的差异

    而`async`参数是Ajax请求中的一个重要选项,它决定了请求是否是异步的。本文将详细探讨`async:false`和`async:true`在Ajax请求中的差异。 首先,`async:false`表示同步请求。当设置为`false`时,Ajax请求会阻塞...

    jQuery_ajax异步请求

    - **带参数的Ajax异步请求**: ```javascript $.ajax({ type: "POST", async: false, cache: false, url: "listComplaintQuantityReports.action", data: { "quantityReport.summaryStartDate": $("#...

    layui-tree实现Ajax异步请求后动态添加节点的方法

    在本示例中,我们需要实现一个功能:当用户在树形菜单中选择某一节点时,通过 AJAX 异步请求向后台添加新的子节点,并在前端动态显示出来。 首先,我们看到 HTML 结构中有一个 `#demo` ID 的 `ul` 元素,它是 layui...

    Ext.Ajax.request2.x实现同步请求

    `Ext.Ajax.request`的默认行为是异步的,如果想要实现同步请求,我们需要设置`async`参数为`false`。以下是一个基本的示例: ```javascript Ext.Ajax.request({ url: 'your-url', method: 'GET', // 或者 'POST' ...

    详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)

    在使用Ajax进行数据交互时,`async` 参数是一个非常关键的选项,它决定了Ajax请求是同步还是异步执行。本文将深入探讨`async: false` 和 `async: true` 在Ajax请求中的作用及其对程序执行的影响。 首先,`async: ...

Global site tag (gtag.js) - Google Analytics