【问题标题】:How to set a count using timer in asp.net如何在 asp.net 中使用计时器设置计数
【发布时间】:2013-05-02 04:44:53
【问题描述】:

我有一个 asp.net 页面,其中有一个标签,其中有一个数字 (60),该数字必须每秒减少。当数字达到0时,它必须弹出一条消息。

我搜了一下,找到了一些定时器代码,试图理解,但不清楚。

我有一个想法,但不知道如何实现。

"初始标签设置为60,每间隔(1000)60减一。如果标签值达到0,则显示警报或消息,标签文本重置为60"。

如果您有任何其他想法或方法来实现这一点,请分享..

【问题讨论】:

    标签: asp.net datetime web-applications web timer


    【解决方案1】:

    这将对您有所帮助:

    C# 代码

    protected void Page_Load(object sender, System.EventArgs e)
    {
       int i = 0;
       int loopval = 0;
    
       Timer1.Enabled = true;
       Timer1.Interval = 1000;
       i = 0;
       loopval = Convert.ToDouble(Label1.Text);
          while (!(i >= loopval)) {
               Label1.Text = (Convert.ToDouble(Label1.Text) - 1);
               i = i + 1;
          }
       interaction.MsgBox("Display your message here");
       Timer1.Enabled = false;
    }
    

    VB 代码

     Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim i, loopval As Integer
        Timer1.Enabled = True
        Timer1.Interval = 1000
        i = 0
        loopval = CDbl(Label1.Text)
             Do Until i >= loopval
                Label1.Text = (CDbl(Label1.Text) - 1)
                i = i + 1
             Loop
        MsgBox("Display your message here")
        Timer1.Enabled = False
     End Sub
    

    不要忘记在计时器控件对象之前添加ScriptManager控件。

    如果您遇到任何错误/问题,请告诉我。

    【讨论】:

    • @Coldharma06 - 我可以知道你得到的确切错误吗,因为我已经通过创建示例网站进行了尝试。
    【解决方案2】:

    Tried n Tested:我已经采取了 3 秒的时间间隔。

    .aspx 页面代码:

     <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" %>
     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
     <html xmlns="http://www.w3.org/1999/xhtml">
     <head runat="server">
        <title></title>
     </head>
     <body>
     <form id="form1" runat="server">
     <asp:Label ID="Label1" runat="server" Text="5"></asp:Label>
     <asp:Timer ID="Timer1" runat="server">
     </asp:Timer>
     <asp:ScriptManager ID="ScriptManager1" runat="server">
     </asp:ScriptManager>
     <asp:Button ID="Button1" runat="server" Text="Button" />
     <div>
     </div>
     </form>
     </body>
     </html>
    

    VB.code

    Partial Class Default2
    Inherits System.Web.UI.Page
    Dim i As Integer
    Dim loopval As Integer
    
    Protected Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        i = loopval - CDbl(Label1.Text)
        If i <> loopval Then
            Label1.Text = (CDbl(Label1.Text) - 1)
        Else
            MsgBox("display your message here")
            Timer1.Enabled = False
        End If
    
    End Sub
    
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Timer1.Enabled = True
        Timer1.Interval = 3000
        loopval = CDbl(Label1.Text)
    End Sub
    End Class
    

    希望对你有帮助:)

    【讨论】:

      猜你喜欢
      • 2017-05-28
      • 1970-01-01
      • 2010-10-02
      • 2021-09-22
      • 2011-06-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多