asy.jsfunction testAsync(){ var temp; $.ajax({ async: false, //同步请求 type : "GET", url : 'tet.php'," />
当前位置:首页 > 日记 > 正文

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

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

test.html

<a href="javascript:void(0)" rel="external nofollow" onmouseover="testAsync()">asy.jsfunction testAsync(){  var temp;  $.ajax({    async: false,  //同步请求    type : "GET",    url : 'tet.php',    complete: function(msg){      alert('complete');    },    success : function(data) {      alert('success');      temp=data;    }  });  alert(temp);}

 

tet.php

<?php  echo "here is html code";  sleep(5);?>

说明

async: false,(默认是true);

如上:false为同步,这个 testAsync()方法中的Ajax请求将整个浏览器锁死,只有tet.php执行结束后,才可以执行其它操作。

当async: true 时,ajax请求是异步的。

但是其中有个问题:testAsync()中的ajax请求和其后面的操作是异步执行的,那么当tet.php还未执行完,就可能已经执行了 ajax请求后面的操作,如: alert(temp+'   end'); 然而,temp这个数据是在ajax请求success后才赋值的,结果,输出时会为空。

----------------------------------------------------

由于ajax默认为异步调用,所以很少能直接拿到ajax的返回值。但有时候由于业务需要还必须要通过ajax来拿,那么我这里提供两种方案。

具体方法:

1、就像通过设置async:false让其异步变同步;

2、可以将接下来需要使用到的参数在success之内执行。

这两种方案,你根据你项目的具体实际选择一个。

使用第一种相对来讲,假如你对性能要求不是太大可以选择。

以上这篇详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

相关文章

Javascript实现base64的加密解密方

Javascript实现base64的加密解密方

方法,加密解密,示例,电脑软件,Javascript,这几天使用PHP向前端传值的时候,遇到一个问题,要将代码传过去赋值。如果使用urlencode()和urldecode()函数,就会出现js无法解码的情况,因为php和js的相关函数算法不一致。于是准备使用通用的base64加密…

如何在word中竖向排列文字word中竖

如何在word中竖向排列文字word中竖

文字,竖向,排列,步骤,如何在,  或许,你去新华书店或者图书馆曾经看到过这样的书籍,文字是自上而下,自左向右或自右向左的,这种样式的版面是我们国家古代出版的书籍版式,那么下面就由小编给大家分享下在word中竖向排列文字的技巧,希望能帮助到您…

让你彻底掌握es6 Promise的八段代

让你彻底掌握es6 Promise的八段代

让你,代码,电脑软件,Promise,前言新的ES6中引入了promise的概念,目的是让回调更为优雅。层层嵌套的回调会让javascript失去美感和可读性,同时javascript也推荐采用链式的方式去书写函数调用。于是Promise就应运而生。本文将通过八段代码让大…

怎么在word中对齐自选图像在word中

怎么在word中对齐自选图像在word中

对齐,图像,步骤,方法,图形,  在word中,有时需要插入图形,当有多个图像时,手动对齐比较麻烦。下面小编教你怎样在word中对齐自选图像。word对齐图形的步骤打开需要对齐的文档,如图:word对齐图形的步骤图1  按住【ctrl】键依次选中需要对齐的…

Word中2010版进行设置文本框样式和

Word中2010版进行设置文本框样式和

设置,文本框,操作技巧,样式,颜色,  如何在Word2010中设置文本框样式和颜色。去除文本框的外边框。以及更改外边框的颜色和样式。今天,小编就教大家在Word中2010版进行设置文本框样式和颜色的操作技巧。Word中2010版进行设置文本框样式和颜…

jQuery实现文章弹出放大效果

jQuery实现文章弹出放大效果

弹出,效果,文章,电脑软件,jQuery,首先先搭写一个基本的格式:$.fn.popImg = function() { //your code goes here}然后用自调用匿名函数包裹你的代码,将系统变量以变量形式传递到插件内部,如下:;(function($,window,document,undefined){ $.fn…

cdr怎么给制作玻璃砖效果?

cdr怎么给制作玻璃砖效果?

效果,电脑软件,cdr,CorelDRAW中想要给图片制作玻璃砖效果,cdr中自带了这个这个效果,该怎么制作呢?下面我们就来看看详细的教程。软件名称:CorelDRAW X5 中文正式版 v15.2.0.661 附详细安装教程软件大小:496MB更新时间:2016-05-161、打开CorelDRAW…

JS字符串按逗号和回车分隔的方法

JS字符串按逗号和回车分隔的方法

方法,字符串,逗号,电脑软件,JS,split函数可以传入一个正则表达式作为分隔的字符串。function foo(str){ var temp = str.split(/[\n,]/g); for(var i =0;i<temp.length;i++){ if(temp[i] == ""){ temp.splice(i, 1); /…

js时间戳格式化成日期格式的多种方

js时间戳格式化成日期格式的多种方

时间戳,方法,日期格式,多种,格式,js需要把时间戳转为为普通格式,一般的情况下可能用不到的, 下面先来看第一种吧function getLocalTime(nS) { return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/,' '); } alert(…

PS有哪些专业术语? 初学者必看的ps

PS有哪些专业术语? 初学者必看的ps

专业术语,必看,初学者,有哪些,电脑软件,ps中有一些专业术语,如果不理解的朋友别人将专业术语自己是听不懂的,该怎么理解这些专业术语呢?下面我们就来看看那详细的教程。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时…

解决ionic和angular上拉加载的问题

解决ionic和angular上拉加载的问题

上拉加载,电脑软件,ionic,angular,说到ionic上拉加载就跟pc的分页是一样的,他需要在html数据列表的最下面边添加<ion-infinite-scroll ng-if="hasmore" on-infinite="loadMore()" distance="10%"> </ion-infinite-scroll> 当列表为空 …

PS合成有趣的各种动物赛跑场景

PS合成有趣的各种动物赛跑场景

场景,有趣,动物,电脑软件,PS,效果图合成并不难,前期需要搜集一些奔跑的动物图片,并把这些动物抠出放到处理好的背景上;动物的形态不是很好的话,可以对局部变形处理;最后微调颜色和光影,并加上投影等即可。最终效果1、创建一个空白文档。2、设置背…