代码如下:<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script language="javascript" type="text/javascript"> var count = 0;
var intervalKey;
function countNumber() { count++;
var spObj = document.getElementById("spShow");
spObj.innerText = count.toString();
}
function runCountNumber() { countNumber();
intervalKey = window.setInterval("countNumber()",1000); } function stopInterval() { var spObj = document.getElementById("spShow");
spObj.innerText = "可以注册了!";
window.clearInterval(intervalKey);
var btnSender = document.getElementById("btnRun");
btnSender.disabled = false;
}
function allowRegister() {
window.setTimeout("stopInterval()", 9000);
} function runMethods() { runCountNumber();
allowRegister();
}
</script>
</head><body onload="runMethods();">
<form id="form1" runat="server">
<span id="spShow" style="color:Red"></span>
<input type="button" id="btnRun" disabled="disabled" value="注册" />
</form>
</body>
</html>
为什么我做的这个,读秒页面显示10的时候,按钮可以点击了,但 显示的是10 而不是可以注册了,
var spObj = document.getElementById("spShow");
spObj.innerText = "可以注册了!";
这个赋值语句没起作用 ,求教~
<head runat="server">
<title></title>
<script language="javascript" type="text/javascript"> var count = 0;
var intervalKey;
function countNumber() { count++;
var spObj = document.getElementById("spShow");
spObj.innerText = count.toString();
}
function runCountNumber() { countNumber();
intervalKey = window.setInterval("countNumber()",1000); } function stopInterval() { var spObj = document.getElementById("spShow");
spObj.innerText = "可以注册了!";
window.clearInterval(intervalKey);
var btnSender = document.getElementById("btnRun");
btnSender.disabled = false;
}
function allowRegister() {
window.setTimeout("stopInterval()", 9000);
} function runMethods() { runCountNumber();
allowRegister();
}
</script>
</head><body onload="runMethods();">
<form id="form1" runat="server">
<span id="spShow" style="color:Red"></span>
<input type="button" id="btnRun" disabled="disabled" value="注册" />
</form>
</body>
</html>
为什么我做的这个,读秒页面显示10的时候,按钮可以点击了,但 显示的是10 而不是可以注册了,
var spObj = document.getElementById("spShow");
spObj.innerText = "可以注册了!";
这个赋值语句没起作用 ,求教~
<head runat="server">
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script language="javascript" type="text/javascript"> var count = 0;
var intervalKey;
function countNumber() { count++;
var spObj = document.getElementById("spShow");
spObj.innerText = count.toString();
if(count == 10) {
stopInterval();
}
}
function runCountNumber() { countNumber();
intervalKey = window.setInterval("countNumber()",1000); } function stopInterval() { var spObj = document.getElementById("spShow");
spObj.innerText = "可以注册了!";
window.clearInterval(intervalKey);
var btnSender = document.getElementById("btnRun");
btnSender.disabled = false;
} function runMethods() { runCountNumber();
}
</script>
</head><body onload="runMethods();">
<form id="form1" runat="server">
<span id="spShow" style="color:Red"></span>
<input type="button" id="btnRun" disabled="disabled" value="注册" />
</form>
</body>
</html>问题出在多线程冲突,当第二个线程执行clear的时候,正好第一个线程已经进入函数。所以clear了之后,还会再执行一次