ยินดีต้อนรับสู่ผู้ที่ชื่นชอบการออกแบบเว็บเพื่อการพัฒนาเว็บ
แม้ว่าการควบคุมเว็บและการควบคุม HTML นั้นใช้งานได้ดีและดูคล้ายกันมาก
แต่กลไกการใช้งานภายในของพวกเขานั้นแตกต่างอย่างสิ้นเชิง
การควบคุมเว็บมีประสิทธิภาพมากกว่าการควบคุม HTML
1. มันค่อนข้างสะดวกในการใช้งาน ตัวอย่างเช่นการสร้างปุ่ม:
การควบคุม HTML นำคอลเล็กชั่นควบคุมขนาดใหญ่ทั้งหมดเข้ามาในหน้า เมื่อใดก็ตามที่ใช้ฟังก์ชันให้ตั้งค่าคุณสมบัติดังนี้:
<ประเภทอินพุต = submit/button runat = เซิร์ฟเวอร์>
สิ่งนี้จะใช้ทรัพยากรควบคุมจำนวนมาก
เว็บควบคุมแยกส่วนรวมเข้ากับฟังก์ชั่นเดียว:
<asp: ปุ่ม id = "btnok" />
สิ่งนี้จะช่วยประหยัดทรัพยากรที่ครอบครองโดยการควบคุมที่ไม่จำเป็น
2. การควบคุมเว็บมีฟังก์ชั่นการวนกลับและสามารถใช้ ViewState เพื่อรักษาสถานะของการควบคุม
การควบคุม HTML ไม่สามารถและเมื่อคลิกหน้าสถานะของมันจะหายไป
การทดลองเช่นนี้สามารถทำได้:
ฉัน. สร้างสองไฟล์แยกกัน: a.html b.aspx
ii. เพิ่ม Radiobutton และปุ่มควบคุม HTML ในหน้า A.HTML
เพิ่ม Radiobutton และปุ่มควบคุมเว็บใน b.aspx
iii.a.html ทำงานโดยตรงกับดับเบิลคลิกที่เบราว์เซอร์ B.Aspx ทำงานผ่าน IIS
iv. ในอินเทอร์เฟซที่กำลังทำงานของ A.HTML เลือก Radiobutton จากนั้นคลิกปุ่มปุ่มคุณจะพบว่า Radiobutton จะ
ยกเลิกการเลือก (สูญเสียสถานะ) แต่ทำเช่นเดียวกันในหน้า b.aspx, Radiobutton จะไม่หายไปเพราะ ViewState
บันทึกสถานะสำหรับมัน คุณสามารถคลิก "ดู"-> "ไฟล์ต้นฉบับ" ในอินเตอร์เฟสที่กำลังรันเพื่อเปิดไฟล์รหัส HTML
ค้นหา ViewState ที่เข้ารหัสคล้ายกับสิ่งต่อไปนี้:
<อินพุต type = "hidden" name = "_ viewstate" value = "ddw0ajfmafmjfzzmj4"/>
ในความเป็นจริงหลักการการใช้งาน ViewState คือการนำข้อมูลบางอย่างลงในการควบคุมที่ซ่อนอยู่และข้อมูล ViewState ที่สร้างโดย ASP.NET
มันถูกเก็บไว้ในลูกค้า
สิ่งหนึ่งที่ควรทราบที่นี่คือ:
ฟังก์ชั่น loopback สามารถเปิดใช้งานได้เมื่อรูปแบบคือไฟล์ *.aspx และตัวควบคุมมีคุณสมบัติ: "runat = server"
3. ความแตกต่างที่ใหญ่ที่สุดระหว่างการควบคุม HTML และการควบคุมเว็บคือพวกเขามีวิธีการจัดการเหตุการณ์ที่แตกต่างกัน สำหรับการควบคุมแบบฟอร์ม HTML
เมื่อมีการเพิ่มเหตุการณ์เบราว์เซอร์จะประมวลผล แต่สำหรับการควบคุมเว็บเหตุการณ์จะถูกสร้างขึ้นโดยเบราว์เซอร์เท่านั้น แต่การเรียกดู
เครื่องจะไม่ประมวลผลและไคลเอนต์จำเป็นต้องส่งข้อความไปยังเซิร์ฟเวอร์เพื่อบอกเซิร์ฟเวอร์เพื่อจัดการเหตุการณ์ แต่เหตุการณ์บางอย่าง
ตัวอย่างเช่น:
กดปุ่ม/ย้าย/เมาส์และกิจกรรมอื่น ๆ เหตุการณ์เหล่านี้ไม่สามารถใช้ได้ใน asp.net
(เนื่องจากเหตุการณ์เหล่านี้มีความรวดเร็วมากเซิร์ฟเวอร์ไม่ได้จัดการกับพวกเขาในเวลา) ดังนั้นการควบคุม HTML จะมีบทบาทร่วมกับเหตุการณ์ HTML
ช่วยในการทำให้เสร็จ
นี่คือเหตุการณ์ทั่วไปสำหรับ HTML:
เหตุการณ์การควบคุม HTML ดำเนินการบนเบราว์เซอร์:
ทริกเกอร์เมื่อคลิก:
<อินพุต type = "ปุ่ม" value = "คลิกฉัน">
ทริกเกอร์เมื่อเมาส์เด้ง:
<อินพุต type = "button" value = "คลิกฉัน" onMouseUp = "การแจ้งเตือน ('สวัสดีสวัสดี!');">
// ทริกเกอร์เมื่อลอยอยู่เหนือการควบคุม
<อินพุต type = "button" value = "คลิกฉัน" onMouseOver = "การแจ้งเตือน ('สวัสดีสวัสดี!"); ">
// ทริกเกอร์เมื่อเมาส์เคลื่อนที่เหนือการควบคุม
<อินพุต type = "button" value = "คลิกฉัน" Onmousemove = "Alert ('สวัสดีสวัสดี!');">
// ทริกเกอร์เมื่อดับเบิลคลิกการควบคุม
<อินพุต type = "button" value = "คลิกฉัน" ondblclick = "การแจ้งเตือน ('สวัสดีสวัสดี!');">
// เมื่อโฟกัสอยู่ในการควบคุมทริกเกอร์เมื่อกดปุ่ม
<อินพุต type = "button" value = "คลิกฉัน" onkeypress = "การแจ้งเตือน ('สวัสดีสวัสดี!');">
// ทริกเกอร์เมื่อกดปุ่ม
<อินพุต type = "button" value = "คลิกฉัน" onkeydown = "การแจ้งเตือน ('สวัสดีสวัสดี!');">