JavaScript 的 prompt
函數(shù)本身沒有直接的輸入限制功能。prompt
函數(shù)用于顯示一個對話框,提示用戶輸入文本,并返回用戶輸入的值。它通常用于簡單的輸入場景,不適合復(fù)雜的數(shù)據(jù)驗證或限制。
如果你需要對用戶輸入進(jìn)行限制,你可以通過以下方法實(shí)現(xiàn):
let input = prompt("請輸入一個數(shù)字:");
let regex = /^\d+$/;
if (regex.test(input)) {
console.log("輸入有效:", input);
} else {
alert("輸入無效,請輸入一個數(shù)字!");
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>自定義對話框</title>
<style>
/* 自定義對話框樣式 */
.dialog {
display: none;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: white;
padding: 20px;
border: 1px solid black;
z-index: 1000;
}
</style>
</head>
<body>
<button onclick="showDialog()">顯示對話框</button>
<div id="dialog" class="dialog">
<label for="input">請輸入一個數(shù)字(1-100):</label>
<input type="text" id="input" name="input">
<button onclick="validateInput()">驗證</button>
</div>
<script>
function showDialog() {
document.getElementById("dialog").style.display = "block";
}
function validateInput() {
let input = document.getElementById("input").value;
let regex = /^\d+$/;
if (regex.test(input) && parseInt(input) >= 1 && parseInt(input) <= 100) {
alert("輸入有效:" + input);
} else {
alert("輸入無效,請輸入一個1到100之間的數(shù)字!");
}
document.getElementById("dialog").style.display = "none";
}
</script>
</body>
</html>
在這個示例中,我們創(chuàng)建了一個自定義對話框,并在其中添加了輸入限制的邏輯。用戶只能輸入1到100之間的數(shù)字,否則會收到警告。