Menggunakan asp.net, peristiwa sisi server akan dipicu secara otomatis saat halaman di-refresh. Ambil contoh sederhana seperti: halaman pendaftaran, setelah kita mengisi informasi pendaftaran, jika kita menekan F5 untuk menyegarkan, maka event Button akan otomatis terpicu, yang akan menyebabkan kesulitan mendaftar kembali.
Solusi saya sebelumnya: query dengan kata kunci, dan jika ada kesamaan, akan ditanyakan bahwa pengguna ini sudah ada.
Namun solusi ini tidak dapat digunakan tanpa pengakuan, dan dia akan mengajukan kembali. Mengingat hal ini, saya mencari solusi baru. Untungnya, dengan saran seorang teman, saya menemukan solusi seperti itu. Pasti ada solusi yang lebih baik, dan saya tidak akan ragu untuk memberi Anda saran.
Solusi: Saat menyegarkan, tangkap KeyPress dan biarkan memicu kejadian tidak berguna lainnya.
1. JavaScript untuk menangkap acara F5
window.document.onkeydown = KeyStroke;
fungsi KeyStroke()
{
var key = event.keyCode;
acara.srcElement.releaseCapture();
jika(kunci == 116)
{
document.getElementById("Button1").klik();
acara.Kode Kunci=0;
acara.returnValue=false;
}
}
2. Tempatkan Tombol pada halaman aspx
<asp:Button id="Button1" style="Z-INDEX: 102; LEFT: 344px; POSITION: absolute; TOP: 408px; WIDTH: 0px;" runat="server"
Text="Button"></asp:Button>
3. Peristiwa tombol
private void Button1_Click(pengirim objek, System.EventArgs e)
{
Response.Write( "Anda telah menekan tombol F5");
}
Solusi "simpan mobil agar tetap tampan" dapat menyelesaikan masalah kecil yang secara otomatis memicu peristiwa untuk penyegaran.