ASP.NET+AJAX解决网页打开等待问题

hexueyu 2009-11-14 01:19:28
页面一打开加裁Gridview并显示页面上。Gridview有一列计算列。
我现在要实现的是。加裁Gridview时计算列不计算。等页面显示出来了,再一行一行计算。计算一个显示在页面。这效果可以看得到。请问这要怎么实现

注意:是页面完全打开显示后再计算。不是加裁Gridview是计算


我是这样做的:

在页面最下面。循环gridview,得到一值传到一ashx页面中处理,得到另一值返回并显示。但最后页面中只显示了循环最后一次得到的值。
我敢确定的是每次循环都得到了一值

但如果加个 alert(vart);这样每个返回值都一一显示出来了

<script>
var vart
$("#divgridAdd").find('span').each(function(i){
if(this.id.indexOf('_laNumber')>0)
{
if($("#"+this.id+"").text()!='')
{
vart=this.id.replace('_laNumber','_txtMoney');
// alert(vart);
creatReq($("#"+this.id+"").text());
}
}
});

function creatReq(num) // 创建xmlhttprequest,ajax开始
{
var url="ShowSubject.ashx?num="+num+"&bill="+$('#txtCode').val()+""; //要请求的服务端地址
if(window.XMLHttpRequest) //非IE浏览器,用xmlhttprequest对象创建
{
req=new XMLHttpRequest();
}
else if(window.ActiveXObject) //IE浏览器用activexobject对象创建
{
req=new ActiveXObject("Microsoft.XMLHttp");
}

if(req) //成功创建xmlhttprequest
{
req.open("post",url,true); //与服务端建立连接(请求方式post或get,地址,true表示异步)
req.onreadystatechange = callback; //指定回调函数
req.send(null); //发送请求
}
}

function callback() //回调函数,对服务端的响应处理,监视response状态
{
if(req.readyState==4) //请求状态为4表示成功
{
if(req.status==200) //http状态200表示OK
{
Dispaly() ;//所有状态成功,执行此函数,显示数据
}
else //http返回状态失败
{
alert("服务端返回状态" + req.statusText);
}
}
else //请求状态还没有成功,页面等待
{
}
}

function Dispaly() //接受服务端返回的数据,对其进行显示
{
var res=req.responseText;
$("#"+vart+"").val(res);
}
</script>
...全文
282 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hexueyu 2009-11-16
  • 打赏
  • 举报
回复
二天了,没人知道吗
hexueyu 2009-11-14
  • 打赏
  • 举报
回复
因为打开页面时好慢慢,所以我想先打开页面,然后进行其它操作
hy_lihuan 2009-11-14
  • 打赏
  • 举报
回复
你的解决方案到底是为了什么目的?因为计算很耗时?一次性计算出来不好吗?
如果计算已经出来只是效果上面出现那只要js就可以处理的;如果真的需要一个一个计算,对服务器的压力还是很大的
zhongjiekangping 2009-11-14
  • 打赏
  • 举报
回复
刚刚开始学习 友情帮顶
hexueyu 2009-11-14
  • 打赏
  • 举报
回复
自己顶下

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧