บทความนี้แสดงวิธีการตัดสินประเภทการอัปโหลดไฟล์ใน JavaScript ซึ่งเป็นเทคนิคที่พบบ่อยมาก วิธีการใช้งานเฉพาะมีดังนี้:
ฟังก์ชั่นจะใช้เมื่ออัปโหลดไฟล์โดยใช้แท็กอินพุตขององค์ประกอบ HTML:
<อินพุต id = "imagefile" name = "imagefile1" accept = "image/jpg, image/jpeg, image/png, image/bmp, image/gif" type = "file" onchange = "imagesubmit (this, 0);"/>>
เหตุการณ์ OnChange จะถูกทริกเกอร์ทันทีหลังจากเลือกภาพ แต่การเลือกภาพเดียวกันซ้ำ ๆ จะไม่กระตุ้นเหตุการณ์ onchang การแก้ปัญหามีดังนี้:
ฟังก์ชั่น imagesubmit (obj, imageType) {ถ้า (imageType == "0") {// รหัสการประมวลผลที่เกี่ยวข้อง ... // แก้ปัญหาการอัปโหลดภาพเดียวกันไม่ได้ทริกเกอร์เหตุการณ์ onchange var nf = obj.clonenode (จริง); nf.value = ''; obj.parentnode.replacechild (NF, OBJ); -เมธอด Clonenode () ใช้เพื่อสร้างสำเนาที่เหมือนกันของการโทรไปยังโหนดนี้ พารามิเตอร์จริงหมายถึงการทำซ้ำอย่างลึกนั่นคือการคัดลอกโหนดและแผนผังโหนดเด็กทั้งหมด เมื่อพารามิเตอร์เป็นเท็จการจำลองแบบตื้นนั่นคือการคัดลอกโหนดเท่านั้น แบบจำลองที่ส่งคืนหลังจากการคัดลอกเป็นของเอกสาร แต่ไม่ได้ระบุโหนดพาเรนต์สำหรับมัน ดังนั้นการคัดลอกโหนดนี้จะกลายเป็น "เด็กกำพร้า" เว้นแต่จะถูกเพิ่มลงในเอกสารผ่านภาคผนวก (), insertBefore () หรือ replacechild ()
ฉันหวังว่าคำอธิบายในบทความนี้จะเป็นประโยชน์กับทุกคนที่ใช้ JavaScript สำหรับการเขียนโปรแกรมเว็บ