Ajax ile saati güncel gösterme

Mini bir uygulama ile merhaba. Web sitelerinde karşılaştığımız güncel saati yani dijital saat gibi saatin, saniyelerin ilerlediği yapıyla karşılaş mısınızdır. Asp.net ile saati saniyeleri güncel hareketli göstermek için sayfayı her saniye yenilememiz gerekecek. İşte bu ve buna benzer durumlarda yardımımıza Ajax web teknolojisi geliyor.

Saati kullanıcıya gösterebilmek için javascript den de yaralanabiliriz. Fakat biraz daha fazla kod yazmak gerekir. Ajax da bunu timer ile kolaylıkla yapabiliyoruz. Ajax timer hakkında daha fazla bir şey konuşmadan direk mini uygulamamıza geçiyorum.

İlk olarak sayfamıza ScriptManager ardından UpdatePanel bunun içerisine Label ve Ajax Timer ekliyoruz. Bunları yaptıktan sonra alttaki arayüz formu kodları gelmekte. Timer Interval değerine 1000, ontick olayına da Timer1_Tick yapıyoruz.

1
2
3
4
5
6
7
8
9
 <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
                <asp:Timer ID="Timer1" runat="server" Interval="1000" ontick="Timer1_Tick">
                </asp:Timer>
            </ContentTemplate>
        </asp:UpdatePanel>

Bundan sonra yapmamız gereken timer tick olayında Label text özelliğine tarihi göstermek kalıyor. Ve bunun da kodu aşağıdaki gibi.

1
2
3
4
protected void Timer1_Tick(object sender, EventArgs e)
        {
            Label1.Text = DateTime.Now.ToString();
        }