ASP.NET UpdatePanel Kontrolü İşlem Sonrası Javascript Fonksiyonu Tetikleme

Nisan 2013 | Faruk Aydoğan, Yazılım Geliştirme Uzmanı
UpdataPanel ile hem görsel açıdan projemize güzellik katarken veritabanını da boşuna yormaktan kurtulabildiğimizi biliyoruz. Peki, .NET' in sağladığı binlerce kolaylıktan biri olan UpdatePanel ile işlemlerimizi yaptıktan sonra bir Javascript fonksiyonunu tetiklememiz gerekseydi bunu nasıl yapardık? Şimdi elimden geldiğince bunu sizlere aktarmaya çalışacağım.

Standart olarak sayfamızda UpdatePanel'i kullandığımızı varsayalım.

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
        //Web Kontrolleri
        <asp:Button ID="Button1" runat="server" Text="Formu Kaydet"/>
</ContentTemplate>
<div id="div1">Bu yazı butona tıklandıktan sonra gizlenmeli!</div>


Şimdi burada basit bir örnek oluşturduk. Butona tıklanıldığında bazı işlemler yapılacak ve sonrasında server-side olarak yapamaktan çekindiğiniz bir işlemi yapmak istediğinizde, yani işlemi tarayıcıya yaptırmak istediğinizde ne yapmalısınız ona bakalım.

// butona tıklanıldığında gerçekleşen olaylarla ilgili kodlar 
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "temp", "<script type='text/javascript'>$('#div1').hide()</script>", false);

Butona tıklatıldığında çalışan eventimizin içine yukarıdaki gibi bir kod satırı eklememiz gerekmektedir. RegisterStartupScript metodu aldığı parametreler ile bu işlemi gerçekleştirmektedir. this.Page ifadesi ile bu sayfaya, "temp" ifadesi ile geçici bir script çalışacağını, devamında aldığı parametre ile de tetiklenecek javascript fonksiyonunu belirtmiş oluyoruz.