VBSCRIPT 客户端编程,写了一个 FOR I = 1 TO N 循环,不断用 XMLHTTP 提交数据到服务器,然后获取返回值显示在页面上,但出现没有响应问

changechange 2006-02-03 07:45:52
VBSCRIPT 客户端编程,写了一个 FOR I = 1 TO N 循环,不断用 XMLHTTP 提交数据到服务器,然后获取返回值显示在页面上,但出现没有响应问题

在进行大量密集运算的时候 IE 窗口没有响应,像死机一样,页面上被修改的部分也没有显示出来,我的要求是

1,能在运算的时候还能在页面上滚动滚动条
2,能够随时显示当前的修改

如果是用 VB /VBA 编程的时候可以在密集运算代码后面加一句 DoEvents 就不死机了,DHTML VBS 如何办到?

FORM.Repaint 可以立即重画界面,以显示客户的修改。DHTML VBS 如何办到?
...全文
72 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
changechange 2006-02-04
  • 打赏
  • 举报
回复
WINDOWS.SETTIMEOUT 有否相关的例子?

主要是这样的,我在服务器需要进行大量运算,然后将运算结果写回客户端,但是服务器端运算的时间超过5分钟,而且回写客户端的数据量超过15MB,现在肯定要用 DHTML 写,客户原意等这些时间,但是就是不能让客户端死在那里,哪位有好办法?


其实测试下来主要是XMLHTTP 的获取需要等,还有是客户端还要进行运算,这个运算时间也很长,大概 70-500秒钟不等。现在要解决两方面,一个是xmlHTTP获取时不要死机(用异步能解决了吧?),还有就是客户端用 VBS 作运算的时候也不要死机,如何解决?
孟子E章 2006-02-03
  • 打赏
  • 举报
回复
用异步来实现。
类似
<script>
var oDiv
var xh
function getXML()
{
oDiv = document.all.m
oDiv.innerHTML = "正在装载栏目数据,请稍侯......."
oDiv.style.display= ""
xh = new ActiveXObject("Microsoft.XMLHTTP")
xh.onreadystatechange = getReady
xh.open("GET",a.value,true)
xh.send()

}

function getReady()
{
if(xh.readyState==4)
{
if(xh.status==200)
{

oDiv.innerHTML = "完成"
}
else
{
oDiv.innerHTML = "抱歉,装载数据失败。原因:" + xh.statusText
}
}
}
</script>
<body>
xmlhttp异步的例子:
URL:<input name=a value="http://www.microsoft.com" style="width:600px">
<input onclick="getXML()" type="button" value="得到源代码">
<input onclick="if(xh && xh.responseText) {alert(xh.responseText);oDiv.innerHTML=xh.responseText}" type="button" value="显示源代码">
<div id=m></div>

61,110

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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