เนื่องจากเราจะใช้เบราว์เซอร์เป็นสภาพแวดล้อมสาธิต เรามาดูฟังก์ชันสองสามอย่างเพื่อโต้ตอบกับผู้ใช้: alert
prompt
และ confirm
อันนี้เราเคยเห็นแล้ว. มันแสดงข้อความและรอให้ผู้ใช้กด “ตกลง”
ตัวอย่างเช่น:
alert("สวัสดี");
หน้าต่างขนาดเล็กที่มีข้อความเรียกว่า หน้าต่างโมดอล คำว่า "โมดอล" หมายความว่าผู้เยี่ยมชมไม่สามารถโต้ตอบกับส่วนที่เหลือของหน้า กดปุ่มอื่นๆ ฯลฯ จนกว่าพวกเขาจะจัดการกับหน้าต่างนั้นแล้ว ในกรณีนี้ – จนกว่าพวกเขาจะกด “ตกลง”
ฟังก์ prompt
ยอมรับสองอาร์กิวเมนต์:
ผลลัพธ์ = พรอมต์ (ชื่อเรื่อง, [ค่าเริ่มต้น]);
โดยจะแสดงหน้าต่างโมดอลพร้อมข้อความ ช่องป้อนข้อมูลสำหรับผู้เยี่ยมชม และปุ่ม ตกลง/ยกเลิก
title
ข้อความที่จะแสดงให้ผู้เยี่ยมชมเห็น
default
พารามิเตอร์ตัวที่สองที่เป็นทางเลือก ซึ่งเป็นค่าเริ่มต้นสำหรับฟิลด์อินพุต
วงเล็บเหลี่ยมในรูปแบบไวยากรณ์ [...]
วงเล็บเหลี่ยมรอบๆ default
ในไวยากรณ์ด้านบนแสดงว่าพารามิเตอร์นี้เป็นทางเลือก และไม่จำเป็น
ผู้เข้าชมสามารถพิมพ์บางอย่างลงในช่องป้อนข้อมูลพร้อมท์แล้วกดตกลง จากนั้นเราจะได้ข้อความนั้นใน result
หรือสามารถยกเลิกการป้อนข้อมูลได้โดยกด Cancel หรือกดปุ่ม Esc จากนั้นเราจะได้ result
เป็น null
การเรียกใช้ prompt
จะส่งกลับข้อความจากช่องป้อนข้อมูลหรือ null
หากอินพุตถูกยกเลิก
ตัวอย่างเช่น:
ให้อายุ = prompt ('คุณอายุเท่าไหร่?', 100); alert(`คุณอายุ ${age} ปี!`); // คุณอายุ 100 ปี!
ใน IE: ระบุค่า default
เสมอ
พารามิเตอร์ตัวที่สองเป็นทางเลือก แต่ถ้าเราไม่ได้ระบุไว้ Internet Explorer จะแทรกข้อความ "undefined"
ลงในพรอมต์
เรียกใช้รหัสนี้ใน Internet Explorer เพื่อดู:
ให้ test = prompt("Test");
ดังนั้น เพื่อให้ข้อความแจ้งดูดีใน IE เราขอแนะนำให้ระบุอาร์กิวเมนต์ที่สองเสมอ:
ให้ test = prompt("Test", ''); // <-- สำหรับ IE
ไวยากรณ์:
ผลลัพธ์ = ยืนยัน (คำถาม);
ฟังก์ชั่น confirm
จะแสดงหน้าต่างโมดอลพร้อม question
และปุ่มสองปุ่ม: ตกลงและยกเลิก
ผลลัพธ์จะเป็น true
หากกด OK มิฉะนั้นจะ false
ตัวอย่างเช่น:
ให้ isBoss = ยืนยัน ("คุณเป็นเจ้านายหรือไม่?"); การแจ้งเตือน ( isBoss ); // จริงถ้ากด OK
เราได้ครอบคลุมฟังก์ชันเฉพาะของเบราว์เซอร์ 3 รายการเพื่อโต้ตอบกับผู้เยี่ยมชม:
alert
แสดงข้อความ
prompt
แสดงข้อความขอให้ผู้ใช้ป้อนข้อความ โดยจะส่งกลับข้อความ หรือหากคลิกปุ่มยกเลิกหรือ Esc จะ null
confirm
แสดงข้อความและรอให้ผู้ใช้กด “ตกลง” หรือ “ยกเลิก” มันจะคืนค่า true
สำหรับ OK และ false
สำหรับ Cancel/ Esc
วิธีการทั้งหมดเหล่านี้เป็นโมดอล: พวกเขาหยุดการทำงานของสคริปต์ชั่วคราวและไม่อนุญาตให้ผู้เยี่ยมชมโต้ตอบกับส่วนที่เหลือของหน้าจนกว่าหน้าต่างจะถูกปิดไป
มีข้อจำกัดสองประการที่ใช้ร่วมกันโดยวิธีการทั้งหมดข้างต้น:
ตำแหน่งที่แน่นอนของหน้าต่างโมดอลถูกกำหนดโดยเบราว์เซอร์ ปกติจะอยู่ตรงกลาง
รูปลักษณ์ที่แน่นอนของหน้าต่างยังขึ้นอยู่กับเบราว์เซอร์ด้วย เราไม่สามารถปรับเปลี่ยนได้
นั่นคือราคาของความเรียบง่าย มีวิธีอื่นในการแสดงหน้าต่างที่สวยงามขึ้นและการโต้ตอบที่สมบูรณ์ยิ่งขึ้นกับผู้เยี่ยมชม แต่หาก "ระฆังและนกหวีด" ไม่สำคัญมากนัก วิธีการเหล่านี้ก็ใช้ได้ดี
ความสำคัญ: 4
สร้างหน้าเว็บที่ขอชื่อและแสดงผล
เรียกใช้การสาธิต
รหัส JavaScript:
ให้ชื่อ = prompt("คุณชื่ออะไร", ""); การแจ้งเตือน (ชื่อ);
หน้าเต็ม:
<!DOCTYPE html> <html> <ร่างกาย> <สคริปต์> 'ใช้อย่างเข้มงวด'; ให้ชื่อ = prompt("คุณชื่ออะไร", ""); การแจ้งเตือน (ชื่อ); </สคริปต์> </ร่างกาย> </html>