tutorial pengembangan web terbaru
 

ASP.NET Formulir Web - Acara


Sebuah Handler acara adalah subroutine yang mengeksekusi kode untuk acara tertentu.


ASP.NET - Event Handler

Lihatlah kode berikut:

<%
lbl1.Text="The date and time is " & now()
%>

<html>
<body>
<form runat="server">
<h3><asp:label id="lbl1" runat="server" /></h3>
</form>
</body>
</html>

Ketika akan kode di atas dieksekusi? Jawabannya adalah: "You don't know..."


Page_Load acara

Acara Page_Load adalah salah satu dari banyak peristiwa yang ASP.NET mengerti. Page_Load acara dipicu ketika beban halaman, dan ASP.NET secara otomatis akan memanggil Page_Load subroutine, dan mengeksekusi kode di dalamnya:

Contoh

<script runat="server">
Sub Page_Load
lbl1.Text="The date and time is " & now()
End Sub
</script>

<html>
<body>
<form runat="server">
<h3><asp:label id="lbl1" runat="server" /></h3>
</form>
</body>
</html>
Tampilkan contoh »

Note: Acara Page_Load tidak mengandung referensi objek atau argumen acara!


The Page.IsPostBack Properti

Page_Load subroutine berjalan setiap kali halaman dimuat. Jika Anda ingin mengeksekusi kode dalam subrutin Page_Load hanya waktu PERTAMA halaman dimuat, Anda dapat menggunakan properti Page.IsPostBack. Jika properti Page.IsPostBack adalah palsu, halaman dibuka untuk pertama kalinya, jika itu benar, halaman dipasang kembali ke server (yaitu dari klik tombol pada formulir):

Contoh

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
  lbl1.Text="The date and time is " & now()
end if
End Sub

Sub submit(s As Object, e As EventArgs)
lbl2.Text="Hello World!"
End Sub
</script>

<html>
<body>
<form runat="server">
<h3><asp:label id="lbl1" runat="server" /></h3>
<h3><asp:label id="lbl2" runat="server" /></h3>
<asp:button text="Submit" onclick="submit" runat="server" />
</form>
</body>
</html>
Tampilkan contoh »

Contoh di atas akan menulis "The date and time is...." pesan hanya pertama kali halaman dibuka. Ketika pengguna mengklik tombol Submit, submit subroutine akan menulis "Hello World!" untuk label kedua, tapi tanggal dan waktu dalam label pertama tidak akan berubah.