我有一个 asp.net 页面,其中有一个标签,其中有一个数字(60)必须每秒减少。当数字达到 0 时,它必须弹出一条消息。
我搜了一下,找到了一些定时器代码,试图理解,但不是很清楚。
我有一个想法,但不知道如何实现。
“最初标签设置为 60,每间隔 (1000) 60 减一。如果标签值达到 0,则显示警报或消息,并将标签文本重置为 60”。
如果您有任何其他想法或方法来实现这一点,请分享..
我有一个 asp.net 页面,其中有一个标签,其中有一个数字(60)必须每秒减少。当数字达到 0 时,它必须弹出一条消息。
我搜了一下,找到了一些定时器代码,试图理解,但不是很清楚。
我有一个想法,但不知道如何实现。
“最初标签设置为 60,每间隔 (1000) 60 减一。如果标签值达到 0,则显示警报或消息,并将标签文本重置为 60”。
如果您有任何其他想法或方法来实现这一点,请分享..
这将帮助您:
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控件。
如果您遇到任何错误/问题,请告诉我。
已尝试 n 已测试:我采用了 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
希望对你有帮助 :)