我试图在按钮单击时显示时钟,然后调用set timeout事件以连续显示当前时间。但是每当我单击按钮时,它只会穿一次鞋。如果我在一段时间后单击,它也可以工作,但不会显示持续变化的时间。

脚本

function showTime() {

        var dat = new Date();
        var h = dat.getHours();
        var m = dat.getMinutes();
        var s = dat.getSeconds();
        var tim = h + " :" + m + ":" + s;
        document.getElementById('MainContent_Label1').innerHTML = tim;
        document.getElementById('MainContent_TextBox1').value = tim;
        var t = setTimeout(showTime(), 1000);

    }
    function Button2_onclick() {
        showTime();
    }


ASP页面

asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <asp:Label ID="Label1" runat="server"></asp:Label>
    <br />
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    <input id="Button2" type="button" value="button" onclick="return Button2_onclick()" /><asp:Button ID="Button1" runat="server" Text="Button"
        onclientclick="showTime()" /><br />
    <br />
</asp:Content>

最佳答案

您应该改用var t = setTimeout(showTime, 1000);

关于javascript - javascript计时,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9583189/

10-12 13:28