ajax中success函数无法改变全局或局部变量的值
时间:2022-05-04
本文章向大家介绍ajax中success函数无法改变全局或局部变量的值,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
在调用一个jquery的ajax方法时我们有时会需要该方法返回一个值或者给某个全局变量赋值,可是我们发现程序执行完后并没有获取到我们想要的值。代码如下:
function modifyMissionSchedule(x,obj) {
var PHONE = getPhone();
var stream = {
"MISSIONID":obj.parent().next("li").attr("id"),
"PHONE":PHONE,
"SCHEDULE":x, //修改后的进度
};
var EncryptData=dataProces(stream);
var check=true;
$.ajax({
url: apiUrl+"modifyMissionSchedule.do?TAG=" + TAG,
type: "POST",
data: EncryptData,
dataType: "json",
cache: false,
success: function(data) {
if(data.CODE=="1"){
getMissionLog();
check=true;
}
else if(data.CODE=="-1"){
check=false;
}
}
});
return check;
}
这样子,该函数的返回值就会无法改变,主要原因是ajax的异步机制。
只要加上一句async:false,问题即可解决。
function modifyMissionSchedule(x,obj) {
var PHONE = getPhone();
var stream = {
"MISSIONID":obj.parent().next("li").attr("id"),
"PHONE":PHONE,
"SCHEDULE":x, //修改后的进度
};
var EncryptData=dataProces(stream);
var check=true;
$.ajax({
url: apiUrl+"modifyMissionSchedule.do?TAG=" + TAG,
type: "POST",
data: EncryptData,
dataType: "json",
cache: false,
async:false,
success: function(data) {
if(data.CODE=="1"){
getMissionLog();
check=true;
}
else if(data.CODE=="-1"){
check=false;
}
}
});
return check;
}
- ADO.NET入门教程(二)了解.NET数据提供程序
- ADO.NET入门教程(三) 连接字符串,你小觑了吗?
- ADO.NET入门教程(四) 品味Connection对象
- ADO.NET入门教程(五) 细说数据库连接池
- ADO.NET入门教程(六) 谈谈Command对象与数据检索
- ADO.NET入门教程(七) 谈谈Command对象高级应用
- ADO.NET入门教程(八) 深入理解DataAdapter(上)
- 深入理解DIP、IoC、DI以及IoC容器
- C#委托使用详解(Delegates)
- LINC switch系列之安装指南
- 设计模式成长记(一) 抽象工厂模式(Abstract Factory)
- 基于Open vSwitch的VxLAN隧道实验网络
- 来来来,快来围观那个Kotlin
- 怎样提高网站访问速度缩短网页加载时间
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Linux下tcpdump命令解析及使用详解
- react native中的聊天气泡及timer封装成的发送验证码倒计时
- 如何卸载linux自带openjdk并安装sun jdk
- Android中实现密码的隐藏和显示的示例
- CentOS8出现-bash:乱码问题及解决方法
- Android编程实现摄像头临摹效果的方法
- Android实现九宫格解锁的实例代码
- 详解Linux系统中虚拟设备文件的各种实用用法
- 适配android7.0获取文件的Uri的方法
- Android RecyclerView使用方法详解
- 详解bash中的初始化机制
- Android音频系统AudioTrack使用方法详解
- 深入解析Android中的setContentView加载布局原理
- Android编程之自定义ProgressBar示例
- Android自动获取输入短信验证码库AutoVerifyCode详解