ajax异步请求使用问题
程序员文章站
2022-03-09 21:51:44
...
ajax异步请求使用问题
今天使用ajax进行异步请求时,遇到一个傻傻的问题。因为想简化页面代码,使用自定义函数,函数内部使用ajax请求,在页面中获取函数返回值。
我是在ajax请求的回调函数中直接返回
var result = queryWithPost(url,{username:username,password:password})
请求函数
function queryWithPost(urlStr,Params) {
$.ajax({
url:"http://localhost:8080"+urlStr,
type:"post",
dataType:"json",
data:Params,
success:function (result) {
return result;
},
error(msg){
return msg;
}
})
发现外面获取的值为undifined。
由于ajax是异步请求,在其回调函数中返回的值外部是无法直接获取的。所以我改用了以下写法:
function queryWithPost(urlStr,Params) {
var s = "";
$.ajax({
url:"http://localhost:8080"+urlStr,
type:"post",
dataType:"json",
data:Params,
success:function (result) {
s = result;
},
error(msg){
s = msg;
}
})
return s;
}
问题解决。
上一篇: JavaScript 之 回调函数的返回值给全局变量赋值问题
下一篇: 关于ajax的异步请求问题
推荐阅读
-
ajax异步请求函数出错,很多浏览器无法成功,提示is not a function
-
关于angularjs异步操作后台请求时,用$q.all排列先后顺序的问题
-
AJAX注册页面异步请求的方法实现
-
ajax的工作原理以及异步请求的封装介绍
-
javascript - ajax异步请求数据,ios屏幕闪动
-
JavaScript如何使用fetch来完成异步请求的实例介绍
-
使用Nginx 反向代理来避免 ajax 跨域请求的方法
-
甩掉ashx和asmx使用jQuery.ajaxWebService请求WebMethod简练处理Ajax
-
jquery请求servlet实现ajax异步请求实例分享
-
Ajax异步(请求)提交类 支持跨域