ajax回调给全局变量,jquery.Ajax回调成功后数据赋值给全局变量的问题
先来看一代码ajax
function checkoldpass($pass) {
$.ajax({
type: 'get',
url: '/admin/check',
data: {'password': $pass},
dataType: 'json',
success: function (data) {
console.log(data)
}
});
console.log(123);
}
这个运行结果是:json
浏览器控制台先打印:123,而后才打印返回来的data。浏览器
为何会是这样。由于js ajax请求原生就是异步的。异步
这就是说若是你在ajax回调函数外声明的变量,在ajax外打印会是null或者是undefined
async
function checkoldpass($pass) {
var msg = null;
$.ajax({
type: 'get',
url: '/admin/check',
data: {'password': $pass},
dataType: 'json',
success: function (data) {
msg = data
}
});
console.log(msg);
}
这样打印出来的msg确定是null。由于是异步的,因此js顺序执行到msg这里确定是空了。ide
解决这个问题的办法函数
function checkoldpass($pass) {
var msg = null;
$.ajax({
type: 'get',
url: '/admin/check',
data: {'password': $pass},
dataType: 'json',
async:false,
success: function (data) {
msg = data
}
});
console.log(msg);
}
在请求的代码里加上async:false,把请求设置为同步的。这样只有回调以后,js才会执行下面的代码。url
但这种体验我的感受很差。仍是在回调里完成其它的操做比较好。get
ajax回调给全局变量,jquery.Ajax回调成功后数据赋值给全局变量的问题相关推荐
- ajax send报错,jquery ajax beforeSend 提交等待问题
需要使用异步加载async : true 否则不会出现等待效果 $.ajax({ url : $('#form').attr("action"), data: $('#form') ...
- php mysql ajax登录界面_PHP+jQuery+Ajax实现用户登录与退出
本文使用Ajax无刷新登录和退出,从而提升了用户体验. 若用户为登录状态,则显示用户相关登录信息,否则显示登录表单. 用户登录与退出功能应用在很多地方,而在有些项目中,我们需要使用Ajax方式进行登录 ...
- Ajax如何设置contenttype,jquery ajax contentType设置
默认get方法没有contentType,post方法的contentType为:application/x-www-form-urlencoded; charset=UTF-8 (1) 设置成app ...
- ajax 成功回调函数,jQuery的阿贾克斯成功回调函数定义jQuery的阿贾克斯成功回调函数定义(jQuery ajax...
我想使用jQuery的ajax从服务器获取数据. 我希望把成功的回调函数定义外面.ajax()块像下面这样. 所以,我需要声明变量dataFromServer像下面这样我就能从成功回调使用返回的数据? ...
- c 中ajax不起作用,Jquery AJAX調用:$(this)在成功后不起作用
I am wondering why $(this) does not work after a jQuery ajax call. 我想知道為什么$(this)在jQuery ajax調用之后不起作 ...
- ajax的结果处理,jQuery ajax返回数据的后续处理
简述 在jQuery中ajax默认是异步请求,我们大多数也需要异步请求,比如: var temp; $.ajax({ type : "post", url : 'test.json ...
- ajax用户注册验证视频,jquery+ajax实现注册实时验证实例详解
本文实例讲述了jquery+ajax实现注册实时验证.分享给大家供大家参考,具体如下: 当我们注册一个用户时,会实时提示该用户的信息是否可用,这就是ajax的应用,很久以前就看过这个实现了,今天又看了 ...
- ajax datatype为html,Jquery ajax请求中datatype的含义
一切从一个普通的前端ajax请求jspringMVC后端的例子开始, 前端jquery ajax 请求: $.ajax({ url: getAbsoluteUrl('score/findScore') ...
- SSM框架,ajax实现登陆界面验证和登陆成功后页面跳转问题
账号.密码和验证码都正确后,使用了ajax实现验证,验证结束后不能像正常一样返回一个字符串,用视图解析器来跳转页面 <!--配置JSP 显示ViewResolver(视图解析器)--> & ...
最新文章
- python3官方说明文档_接下来? · Python3.7.3官方文档 简体中文 · 看云
- 从底层理解Python的执行
- 解决Unity协程无法同步返回的问题
- 优秀学生专栏——董超
- centos常用命令_二、Docker镜像是什么?Docker常用命令
- erp系统是什么软件有哪些
- python 声明不赋值_为什么Python赋值不返回值?
- DE21 Convolution Formula
- WAP开发资料站(最新更新)
- 20155207第十章课下测试补交
- Activiti5.22:删除工作流引擎自动创建的外键约束
- 计算机怎么看事件管理,win7系统事件查看器怎么打开
- 怎么用阿里云服务器部署项目?上传简单项目
- HTML制作一个介绍自己家乡的网站——贵阳,排版整洁,内容丰富,主题鲜明
- 百科知识 ass文件如何打开
- UEFI 中的Gmac网卡驱动实现
- Android软键盘使用
- Linux MySQL数据库的备份
- 编译器连接器分析器_使用构建分析器了解您的构建
- 两栏布局的几种实现方式
热门文章
- python进程池_python进程池剖析(一)
- php和windows对应,哪个.so文件可以用于windows系统中与.dll文件相对应的linux系统,以便将php连接到ms sql server...
- 行政区域村级划分数据库_最新行政区划代码省市区三级 乡镇街道四级 村五级 数据库(2020年11月版 )...
- 广州专科计算机学校录取分数线,广州大专多少分能录取?高考分数170分能上广州大专?...
- 交叉编译openwrt php,交叉编译n2n,以openwrt为例子
- 【BZOJ】1756: Vijos1083 小白逛公园(线段树)
- 树莓派 Learning 002 装机后的必要操作 --- 03 替换软件源
- struts 的action 线性安全问题
- 让Android软键盘默认进入英文键盘
- 如何在win下使用linux命令