jquery中ajax用return来返回值无效
Posted Terry蒋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery中ajax用return来返回值无效相关的知识,希望对你有一定的参考价值。
jquery中,ajax返回值,有三种写法,只有其中一种是成功的
/** * async:false,同步调用 * 返回1:2 * 失败 * 分析:ajax内部是一个或多个定义的函数,ajax中return返回值,返回到ajax定义函数,而不是ajax外层的函数 */ function checkAccount1(){ var result = "1:2"; $.ajax({ url : path+‘/user/checkAccount.do‘, type : "post", data : {‘account‘:"1",‘accType‘:1}, async : false, success : function(data) { return "1:1"; } }); return result; } /** * async:true,异步调用 * 返回1:2 * 失败 * 分析:result = "2:1"和后面return result异步执行,导致return result先执行 */ function checkAccount2(){ var result = "2:2"; $.ajax({ url : path+‘/user/checkAccount.do‘, type : "post", data : {‘account‘:"1",‘accType‘:1}, async : true, success : function(data) { result = "2:1"; } }); return result; } /** * 同步调用,且在ajax对全局变量进行设值 * 返回:"3:1" * 成功 * 分析:先执行result = "3:1";再往下执行return result; */ function checkAccount3(){ var result = "3:2"; $.ajax({ url : path+‘/user/checkAccount.do‘, type : "post", data : {‘account‘:"1",‘accType‘:1}, async : false, success : function(data) { result = "3:1"; } }); return result; }
以上是关于jquery中ajax用return来返回值无效的主要内容,如果未能解决你的问题,请参考以下文章
关于$.ajax()、$.get()、$.post()获取return值得问题