ajax多次请求的一个效果思路
首先页面加载时候显示遮罩层
jQuery(function() {
show_dialog();
//tianxie();
});
定义一个全局数组,用于存放问题id
var qar = [];
循环问题id,并赋值到qar数组中
for (quid_index = 0; quid_index < results.totalProperty; quid_index++) {
questions[quid_index] = [];
questions[quid_index][0] = results.content[quid_index].quid; //问题编号
questions[quid_index][1] = results.content[quid_index].total; //问题类型
qar[quid_index] = results.content[quid_index].quid;
}
最后在ajax 请求成功后的回调函数里,做递减操作,判断最后回调是否为0(这里是5,程序还没完全写完,只能判断到这里。),最后遮罩层隐藏。
function optionsDataAjax(param, field) {
var options = jQuery.ajax({
async: true,
type: "get",
url: "${homeMoudle}/home/quickreport/optionsDataRes.htm",
data: param + field,
success: function(data,s,k) {
//alert("option======="+data);
var txt = eval('(' + data + ')');
var json = eval(txt.content);
for (var i = 0; i < json.length; i++) {
var quid = json[i].quid;
var total = json[i].total;
jQuery("#q" + quid).html('(' + total.toFixed(1) + '%)');
}
qar.splice(0,1);
//console.log("optionsDataAjax==="+qar.length);
if(qar.length==5){
tianxie();
}
}
});
} function fuxuanAjax(param, field) {
jQuery.ajax({
async: true,
type: "get",
url: "${homeMoudle}/home/quickreport/getFuxuan.htm",
data: param + field,
success: function(data) {
//alert("option======="+data);
var txt = eval('(' + data + ')');
var json = eval(txt.content);
for (var i = 0; i < json.length; i++) {
var quid = json[i].quid;
var total = json[i].total;
jQuery("#q" + quid).html('(' + total.toFixed(1) + '%)');;
}
qar.splice(0,1);
if(qar.length==5){
tianxie();
}
}
});
} function numberDataAjax(param, field) {
jQuery.ajax({
async: true,
type: "get",
url: "${homeMoudle}/home/quickreport/numberDataRes.htm",
data: param + field,
success: function(data) {
//alert("number======="+data);
var txt = eval('(' + data + ')');
if (txt.quid == 159 || txt.quid == 445 || txt.quid == 533 || txt.quid == 534) {
var size = jQuery("#companysize").html();
var val = txt.total / size;
jQuery("#q" + txt.quid).html(val.toFixed(2));
} else {
jQuery("#q" + txt.quid).html(txt.total.toFixed(2));
}
qar.splice(0,1);
if(qar.length==5){
tianxie();
}
}
});
} function tianxie() {
hide_dialog();
}
ajax多次请求的一个效果思路的更多相关文章
- JS 点击元素发ajax请求 打开一个新窗口
JS 点击元素发ajax请求 打开一个新窗口 经常在项目中会碰到这样的需求,点击某个元素后,需要发ajax请求,请求成功以后,开发需要把链接传给前端(或者说请求成功后打开新窗口),前端需要通过新窗口打 ...
- 关于ajax异步请求的一个细节问题
首先描述一下问题场景:我们正在做一个汽车出租项目,使用maven+ssm+easyui来完成,这个问题是在做汽车办理出租业务的时候出现的. 问题描述:在使用ajax发送异步请求时,遇到一个问题,就是在 ...
- 用iframe设置代理解决ajax跨域请求问题
面对ajax跨域请求的问题,想用代理的方式来解决这个跨域问题.在服务器端创建一个静态的代理页面,在客户端用iframe调用这个代理 今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到aja ...
- MVC的Ajax的异步请求
MVC的Ajax的异步请求 在这里小写一下MVC的异步请求的一点小总结. 个人认为是有两种的,一种就是跟webform一样的,依旧是使用jQuery的$.get()方法,只是请求地址不同,webfor ...
- 有关Ajax跨域请求的解决方案
前言 最近博主在赶项目进度.所以微信二次开发那边的博文一直没有更新.后续时间会慢慢记录这个学习历程的.来年公司要开发微信小程序.到时也会记录一下历程. 闲话少说,今天在工作中遇到了SpringMVC接 ...
- 使用Ajax发送http请求(get&post请求)
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 同步和异步 同步和异步的概念 同步:必须等待前面的任务完成,才能继续后面 ...
- Ajax跨越问题原因分析与解决思路
1.什么是AJAX跨域问题 简单来说,就是前端调用后端服务接口时 如果服务接口不是同一个域,就会产生跨域问题 2.AJAX跨域场景 前后端分离.服务化的开发模式 前后端开发独立,前端需要大量调用后端接 ...
- ext 的loadmask 与ajax的同步请求水火不容
由于ajax 的同步请求会有一段请求时间.有的短.有的长,对于短的我们还是能接受的,不过长的话就必须处理一下了, 就比如处于ext 4.2.0的框架下,需要一个遮掩的样式,框架是有自带的,loadma ...
- AJAX跨域请求json数据的实现方法
这篇文章介绍了AJAX跨域请求json数据的实现方法,有需要的朋友可以参考一下 我们都知道,AJAX的一大限制是不允许跨域请求. 不过通过使用JSONP来实现.JSONP是一种通过脚本标记注入的方式, ...
随机推荐
- P2480 [SDOI2010]古代猪文 Lucas+CRT合并
\(\color{#0066ff}{ 题目描述 }\) 猪王国的文明源远流长,博大精深. iPig在大肥猪学校图书馆中查阅资料,得知远古时期猪文文字总个数为N.当然,一种语言如果字数很多,字典也相应会 ...
- 平衡树学习笔记(3)-------Splay
Splay 上一篇:平衡树学习笔记(2)-------Treap Splay是一个实用而且灵活性很强的平衡树 效率上也比较客观,但是一定要一次性写对 debug可能不是那么容易 Splay作为平衡树, ...
- matplotlib类
1.plt.subplot 在matplotlib下,一个Figure对象可以包含多个子图(Axes),可以使用subplot()快速绘制,其调用形式如下:subplot(numRows, numCo ...
- 【模板】缩点 tarjan+dp
题目背景 缩点+DP 题目描述 给定一个n个点m条边有向图,每个点有一个权值,求一条路径,使路径经过的点权值之和最大.你只需要求出这个权值和. 允许多次经过一条边或者一个点,但是,重复经过的点,权值只 ...
- 牛客国庆集训day5 B 电音之王 (大数乘模)
链接:https://www.nowcoder.com/acm/contest/205/B来源:牛客网 题目描述 终于活成了自己讨厌的样子. 听说多听电音能加快程序运行的速度. 定义一个数列,告诉你a ...
- springboot整合dubbo注解方式(四)
在笔者换jar包时候出现问题: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/zook ...
- Linode安装环境
Ubuntu 18 密码:Fenghaiyan35 netstat -plnt //查看所有文件 sudo apt-get install apac ...
- 华东交通大学2015年ACM“双基”程序设计竞赛1003
Problem C Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Sub ...
- battery-historian结果分析
准备电量数据: 1. 断开adb服务 执行:adb kill-server 2. 开启adb服务 执行:adb start-server或者adb devices这两步操作的作用:adb作为一种连接的 ...
- CentOS 同时忘记用户名和密码
开机时,狂按Esc 光标选中之前开机常用的那个系统,按下e进入编辑模式 按'↑'和'↓'在该页面找到quiet,在它后面加上single 按Ctrl + x进入到单用户模式 再次进入后,系统会提示你输 ...