js倒计时,防页面刷新

来源:互联网 发布:淘宝店被降权了怎么办 编辑:程序博客网 时间:2024/05/21 06:47

在网上看到的一个倒计时,稍微改了一下,时间是从后台传过来的,可以防止页面刷新,时间的长短可以灵活设置。

 

 <form name="form" action="../ExamServlet" method="post">
          <!-- 时间和日期都是后台生成,放到session中传过来,放到hidden中方便js取 -->
          <input type="hidden" name="time" value="<%=session.getAttribute("time").toString() %>">
         <input type="hidden" name="date" value="<%=session.getAttribute("date").toString() %>"/>

                     距离答题结束还有:
                    <br>                         
                    <strong id="RemainH">XX</strong>时<strong id="RemainM">XX</strong >分<strong id="RemainS">XX</strong>秒

</form>
</body>
 


<script language="JavaScript">
<!-- //
var time = document.form.time.value;
var date = document.form.date.value;
var startTime = new Date(date);
var EndTime=(startTime.getTime()-14*60*60*1000)+time*60*1000;//这个设置倒计时的时间,按毫秒算,也即60*1000就是一分钟
function GetRTime(){
var NowTime = new Date();
var nMS =EndTime - NowTime.getTime();
var nH=Math.floor(nMS/(1000*60*60)) % 24;
var nM=Math.floor(nMS/(1000*60)) % 60;
var nS=Math.floor(nMS/1000) % 60;
if (nH<=0 && nM <=0 && nS <=0) {
   alert("时间到了,提交...");
   document.form.submit();
}
 document.getElementById("RemainH").innerHTML=nH;
 document.getElementById("RemainM").innerHTML=nM;
 document.getElementById("RemainS").innerHTML=nS;
setTimeout("GetRTime()",1000);
 
}
window.onload=GetRTime;
// -->
</script>
</html>

原创粉丝点击