if(window.ActiveXObject && (System.ie || !window.XMLHttpRequest))
{
window.XMLHttpRequest = function()
{
var msxmls=['MSXML3','MSXML2','Microsoft'];
for(var i=0;i<msxmls.length;i++)
try{return new ActiveXObject(msxmls[i]+'.XMLHTTP')} catch(ex){}
System._xmlHttp="mz"; throw new Error(System.NOT_SUPPORTED_XMLHTTP);
}
}var xhr = new XMLHttpRequest();
xhr.open("GET", "abc.aspx", false);
xhr.send(null);if (xhr.readyState==4) alert(xhr.responseText);
{
window.XMLHttpRequest = function()
{
var msxmls=['MSXML3','MSXML2','Microsoft'];
for(var i=0;i<msxmls.length;i++)
try{return new ActiveXObject(msxmls[i]+'.XMLHTTP')} catch(ex){}
System._xmlHttp="mz"; throw new Error(System.NOT_SUPPORTED_XMLHTTP);
}
}var xhr = new XMLHttpRequest();
xhr.open("GET", "abc.aspx", false);
xhr.send(null);if (xhr.readyState==4) alert(xhr.responseText);
我现在使用JavaScript写了一段代码
<script>
function time(){
window.setTimeout("count()",100);
}
function formatFloat(src, pos)
{
return Math.round(src*Math.pow(10,pos))/Math.pow(10, pos);
}
function count()
{
var oHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); oHttpReq.open("POST","refresh.aspx",false); oHttpReq.send();
var oDoc = new ActiveXObject("MSXML2.DOMDocument");
oDoc.loadXML(oHttpReq.responseText);
var count = oDoc.selectSingleNode("//sno").nodeTypedValue;
Form1.TextBox1.value = formatFloat( count , 2 );
}
</script>
……
<INPUT id="btn_compute" onclick="time()" type="button" value="[计数]">点击按钮后触发time()函数,启动定时器,可以定时发送请求,每发送一次请求,count值会加1,TextBox1能够自动显示计数值
但发现setTimeout不起作用,定时器不能工作,只有每次点击按钮时,TextBox1的值会变化,而不是按照希望的自动变化。请问是怎么回事?