请问我每隔1秒就要用XMLHTTP的SEND提交到一个叫XMLHTTP。ASP的文件,让它把最新的数据取出来,该怎么做

水中飞月
优质创作者: Java技术领域
领域专家: 后端开发技术领域
2003-06-08 11:07:11
我是这么做的

<script language=javascript>
function xmlpost()
{
//document.body.innerHTML='';
var pc=0;
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
var xmldoc=new ActiveXObject("Msxml2.DOMDocument");
xmlhttp.open("get","xmlhttp.asp",false);
xmlhttp.send();
//xmlhttp.send("<stations><value>33.32</value></stations>");
if (xmlhttp.status != 200)
alert(xmlhttp.statusText);
else
{
//showit.innerHTML=xmlhttp.responseText;
var returnvalue=xmlhttp.responseXML.xml
}
xmldoc.loadXML(returnvalue);
node = xmldoc.selectNodes("//stations/count");
var stationcount=parseInt(node.item(0).text);
var i=0;
document.write("<table border='1'><tr><td>站点名</td><td>数值</td></tr>");
for(i=1;i<=stationcount;i++)
{
node=xmldoc.selectNodes("//stations/station"+i+"/name");
var name=node.item(0).text
node=xmldoc.selectNodes("//stations/station"+i+"/value");
var value=node.item(0).text
document.write("<tr><td>"+name+"</td><td>"+value+"</td></tr>")
}
document.write("</table>");
window.setTimeout("xmlpost",1000);
}
</script>

xmlhttp.asp文件如下
<%
Dim xmldom
Set xmldom = Server.CreateObject("Msxml2.DOMDocument")
Response.ContentType = "text/xml"
Response.CharSet = "GB2312"
xmldom.loadXML("<stations><count>2</count><station1><name>a</name><value>33.23</value></station1><station2><name>b</name><value>22.13</value></station2></stations>")
xmldom.save(Response)
%>

可是它就在页面载入的第一次取一下数据,而不是每隔1秒就去取一下数据,为什么,怎么用SETTIMEOUT使XMLHTTP不断的往后台发送并取出新的数据??
...全文
57 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuzxit 2003-06-09
  • 打赏
  • 举报
回复
你寫的window.setTimeout("xmlpost",1000);少了個括號
改為:
window.setTimeout("xmlpost()",1000);
meizz 2003-06-09
  • 打赏
  • 举报
回复
window.setInterval("xmlpost()",1000);

setTimeout 只会执行一次就停止的
meizz 2003-06-09
  • 打赏
  • 举报
回复
setTimeout 确实只会执行一次就停止
你的函数里可以重复调用只不过是你将 setTimeout 写在xmlpost函数里反复回调而已.
水中飞月 2003-06-09
  • 打赏
  • 举报
回复
我自己早解决了,谁说SETTIMEOUT只执行一次就停止了!!
水中飞月 2003-06-08
  • 打赏
  • 举报
回复
我就是用了window.setTimeout("xmlpost()",1000);
还是不起作用才问的呀,是不是XMLHTTP流上的问题???
fason 2003-06-08
  • 打赏
  • 举报
回复
try:
window.setTimeout("xmlpost()",1000);

87,987

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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