返回首页

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>Digitl clock</title>

<style type="text/css">

#time{

font-size:50pt;

}

</style>

</head>

<body  枚nload="timer()">

 

<script type="text/javascript" language="javascript">

//var digiclock = "00:00:00";

i = 0;

function timer()

{

 

    var digiformat = "";

	if(i>3599)

	{

		var H = Math.floor(i/3600);

	}

	else

	{

		var H = 0;

	}

	

	var M = i - (H*3600)

	

	if(M>59)

	{

		M = Math.floor(M/60)

	}

	else

	{

		M = 0

	}	

	var S = i - (M*60)	

	if(H<10)

	{

		H = "0"+H;

	}

	if(M<10)

	{

		M = "0"+M;

	}

	if(S<10)

	{

		S = "0"+S;

	}

	

//	document.getElementById('time').innerHTML = H+":"+M+":"+S;

    document.getElementById('lblTimer').innerHTML = H+":"+M+":"+S;

    setTimeout('timer()', 1000);

    i++;

}

</script>

 

<%--<asp:HiddenField ID="hidenfld" runat="server" />--%>

<asp:Label ID="lblTimer" runat="server" Font-Size="30px"    ></asp:Label>&nbsp &nbsp &nbsp

<input type=button ID="btnrefresh"  runat="server" value="refresh"/>

 

</body>

</html>
我怎样才能避免刷新计数器,我尝试了所有的方式。

回答

评论会员:incaunu 时间:2012/02/07
也许像这样将帮助你:


<body onload="timer()">

    <form id="form1" runat="server">

    <div>

        <asp:hiddenfield runat="server" id="timerValue" value="0" xmlns:asp="#unknown" />

        <script type="text/javascript" language="javascript">

            function timer() {

                var timerValue = document.getElementById("timerValue");

                var i = timerValue.value;

                var digiformat = "";

 

                if (i > 3599) {

                    var H = Math.floor(i / 3600);

                } else {

                    var H = 0;

                }

 

                var M = i - (H * 3600)

 

                if (M > 59) {

                    M = Math.floor(M / 60)

                } else {

                    M = 0

                }

                

                var S = i - (M * 60)

                if (H < 10) {

                    H = "0" + H;

                } 

                if (M < 10) {

                    M = "0" + M;

                }

                if (S < 10) {

                    S = "0" + S;

                }

 

                document.getElementById('lblTimer').innerHTML = H + ":" + M + ":" + S;

                setTimeout('timer()', 1000);

                i++;

                timerValue.value = i;

            }

        </script>

        <label id="lblTimer" style="font-size:30px"></label>&nbsp &nbsp &nbsp

        <asp:button runat="server" text="Refresh" xmlns:asp="#unknown" />

    </div>

    </form>

</body>

:沙欣Khorshidnia
评论会员:游客 时间:2012/02/07
使用隐藏域1。阅读我从服务器(你的函数的第一行)2。后,我使用__doPostBack的价值张贴到服务器。我觉得我不闪烁后,每刷新