使用 ajax 多次请求,并将结果集合并(ajax 非异步)
2024-08-27 11:34:41
直接上代码吧... 里面有注释
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script src="js/jquery-3.4.1.js"></script>
</head>
<body>
<script> (function() {
var data = {stuId:'4231'};
var list = [];
getInfo(function(data,obj){
// 第一次查询没有数据或者条数不满足3条数据,进行参数分割
if( data ){
list.push(data);
}else{
// 参数分割
var stuIds = obj.stuId.split("");
// 循环请求获取数据
for (var i = 0; i < stuIds.length; i++) {
// 参数对象
var obj = {stuId: stuIds[i]};
//先判断 list 是否的条数 是否满足条件
if( list.length >= 2 ){
// 中止请求
break;
//throw Error("满足条件,不再进行请求...");
}else{
getInfo(function(data){
if( data ){
list.push(data);
}
},obj);
}
}
}
},data); console.log(list);
})(); // 回调函数
function getInfo(callback,stuId) {
$.ajax({
async:false,// 同步请求
type: 'get', //请求方式
url: 'http://127.0.0.1:8080/stu/findById', //请求服务器地址
contentType: "application/json", //设置将要传输内容的编码类型
data: stuId, //参数对象
success: function(data) { //完成时的事件
callback(data,stuId);
},
error: function(error) { //出现错误时的事件
alert("出现异常。");
}
});
}
</script>
</body>
</html>
最新文章
- kubernetes&;tensorflow
- java.lang.NumberFormatException: For input string: ";1608020001 "; 错误
- 在大于32GB或64GB容量的SD卡上使用NOOB安装树莓派 - Using NOOB on SD cards larger than 32GB or 64GB for Raspberry Pi
- redis 参考
- css z-index详解
- 关于在linux下安装git,以及在idea上将项目部署到码云上
- manjaro备忘录
- ROS机器人程序设计(原书第2版)补充资料 (伍) 第五章 计算机视觉
- scrapy安装失败:error:Microsoft Visual C++ 14.0 is reuired.及同类型安装问题解决办法
- JavaScript函数继承
- SharePoint列表模板(.stp)
- shell_base
- 浅谈cpu.idle和cpu.load
- 【Eclipse】Eclipse上如何集成SVN插件
- 提高C++程序运行效率的10个简单方法
- 【Unity Shader】(八) ------ 高级纹理之立方体纹理及光线反射、折射的实现
- 关闭pm2
- ubuntu16.04 Detectron目标检测库配置(包含GPU驱动,Cuda,Caffee2等配置梳理)
- bzoj 2213: [Poi2011]Difference
- fmpeg