, selamat datang di penggemar desain web untuk pengembangan web.
Meskipun kontrol web dan kontrol HTML sangat fungsional dan terlihat sangat mirip
Tetapi mekanisme implementasi internal mereka sangat berbeda
Kontrol web lebih efisien daripada kontrol HTML
1. Ini juga cukup nyaman untuk digunakan. Misalnya, generasi tombol:
Kontrol HTML membawa semua koleksi kontrol besar ke halaman. Setiap kali fungsi digunakan, atur properti sebagai berikut:
<Input Type = Kirim/Tombol Runat = Server>
Ini akan memakan sejumlah besar sumber daya kontrol
Kontrol web membongkar yang terintegrasi ke dalam satu fungsi:
<asp: tombol id = "btnok" />
Ini menghemat sumber daya yang ditempati oleh kontrol yang tidak perlu
2. Kontrol Web memiliki fungsi loopback, dan dapat menggunakan View -state untuk mempertahankan keadaan kontrol.
Kontrol HTML tidak bisa, dan ketika halaman diklik, statusnya akan hilang.
Eksperimen seperti ini dapat dilakukan:
Saya. Buat dua file secara terpisah: A.html b.aspx
ii. Tambahkan RadioButton dan tombol Kontrol HTML di halaman A.html,
Tambahkan RadioButton dan tombol Kontrol Web di B.aspx
iii.a.html berjalan langsung dengan klik dua kali di browser, b.aspx berjalan melalui IIS
iv. Di antarmuka yang berjalan A.html, pilih RadioButton, lalu klik tombol tombol, Anda akan menemukan bahwa RadioButton akan
Hapus centang (kehilangan statusnya), tetapi lakukan hal yang sama pada halaman b.aspx, Radiobutton tidak akan hilang karena viewstate
Simpan status untuk itu. Anda dapat mengklik "Lihat"-> "File Sumber" di antarmuka yang berjalan untuk membuka file kode HTML.
Temukan View Statsate terenkripsi, mirip dengan yang berikut:
<input type = "hidden" name = "_ viewstate" value = "ddw0ajfmafmjfzzmj4"/>
Faktanya, prinsip implementasi view -statsate adalah untuk memasukkan beberapa informasi ke dalam kontrol tersembunyi, dan informasi view -states yang dihasilkan oleh ASP.NET
Itu disimpan pada klien
Satu hal yang perlu diperhatikan di sini adalah:
Fungsi loopback hanya dapat dihidupkan ketika formatnya adalah file *.aspx dan kontrol memiliki properti: "runat = server".
3. Perbedaan terbesar antara kontrol HTML dan kontrol web adalah bahwa mereka memiliki metode penanganan peristiwa yang berbeda. Untuk kontrol formulir HTML,
Ketika suatu peristiwa dinaikkan, browser memprosesnya. Tetapi untuk kontrol web, acara hanya dihasilkan oleh browser, tetapi menjelajahi
Mesin tidak akan memprosesnya, dan klien perlu mengirim pesan ke server untuk memberi tahu server untuk menangani acara tersebut. Tapi beberapa insiden,
Misalnya:
Tekan tombol/pindahkan/mouse dan acara lainnya, acara ini tidak tersedia di ASP.NET
(Karena peristiwa ini sangat kedekatan, server tidak menanganinya tepat waktu), maka kontrol HTML akan memainkan perannya, dikombinasikan dengan acara HTML
Membantu menyelesaikan.
Berikut adalah beberapa acara umum untuk HTML:
Acara kontrol HTML dieksekusi di browser:
Dipicu saat diklik:
<input type = "tombol" value = "klik saya">
Dipicu saat mouse terpental:
<input type = "tombol" value = "klik saya" onmouseup = "waspada ('hai, halo!');">
// pemicu saat mengambang di atas kontrol
<input type = "tombol" value = "klik saya" onmouseover = "waspada ('hai, halo!"); ">
// dipicu saat mouse bergerak di atas kontrol
<input type = "tombol" value = "klik saya" onmouseMove = "waspada ('hai, halo!');">
// dipicu saat mengklik dua kali kontrol
<input type = "tombol" value = "klik saya" ondBlClick = "waspada ('hai, halo!');">
// Saat fokusnya adalah pada kontrol, memicu saat tombol ditekan
<input type = "tombol" value = "klik saya" onkeypress = "waspada ('Hai, halo!');">
// dipicu saat tombol ditekan
<input type = "Tombol" value = "klik saya" onkeydown = "alert ('hai, halo!');">