Định nghĩa
prompt(message, defaultValue) hiển thị dialog nhập text, có nút OK/Cancel. Trả về string (OK) hoặc null (Cancel/ESC).
Ví dụ
<!DOCTYPE html>
<html>
<head>
<script>
function getValue() {
var retVal = prompt("Nhap ten cua ban:", "Ten mac dinh");
if (retVal !== null) {
document.write("Ban nhap: " + retVal);
} else {
document.write("Ban da huy");
}
}
</script>
</head>
<body>
<p>Click nut de xem prompt:</p>
<button onclick="getValue()">Click Me</button>
</body>
</html>
Đặc điểm
- Synchronous blocking: dừng code cho đến khi user đóng dialog.
- Giao diện do trình duyệt kiểm soát (không style được).
- Trả về
nullnếu Cancel/ESC, string rỗng""nếu OK không nhập. - Tham số 2: giá trị mặc định trong ô input.
Khuyến nghị hiện đại
- Tránh
prompttrong production UX (làm phiền, không responsive, mobile kém). - Thay bằng:
<input>+ custom modal, form HTML, thư viện (SweetAlert2, Bootstrap Modal). - Chỉ dùng
promptcho prototype, admin tool, demo nhanh.
Các dialog built-in khác
| Hàm | Mục đích | Trả về |
|---|---|---|
| alert(msg) | Thông báo | undefined |
| confirm(msg) | Xác nhận OK/Cancel | true/false |
| prompt(msg, default) | Nhập text | string/null |