0
我有一個使用腳本管理器的母版頁,在另一頁上,我想顯示一個從0到10分鐘計數的數字時鐘。 asp.net代碼:使用定時器不能更新標籤
<asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server">
</asp:ScriptManagerProxy>
<asp:Timer ID="Timer1" runat="server" Interval="5000" ontick="Timer1_Tick">
</asp:Timer>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
</Triggers>
<ContentTemplate>
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
C#代碼:
int min=0,sec=0;
protected void Timer1_Tick(object sender, EventArgs e)
{
if (sec == 55)
{
min = min + 1;
sec = 0;
}
else
{
sec = sec + 5;
}
Label1.Text = min.ToString() +":"+ sec.ToString();
if(min==10&&sec==0)
{
Timer1.Enabled=false;
Label1.Text = "clock over!";
}
的頁面開始以0:5,不發生任何變化。請指出d代碼是否有錯誤!
嘿,謝謝你的建議。我現在使用了一個JavaScript函數,但唯一的問題是我想觸發一個c#函數,當計時器的值是10:00,我不想提交值的形式,因爲我想2重定向到同一頁面。關於這個的任何想法? – 2012-01-08 12:56:22
@YashUpadhyay您需要從JavaScript/JQuery觸發一個asp.net服務器端事件。鏈接http://stackoverflow.com/questions/8771097/raise-server-side-button-click-event-from-javascript-in-ajax-call/8771155#8771155給出了一個非常好的解釋如何做到這一點(不是我的回答 - 其他人) – 2012-01-08 13:17:47