Window: prompt() 方法
window.prompt() 指示瀏覽器顯示一個帶有可選訊息的對話方塊,提示使用者輸入一些文字,並等待使用者提交文字或取消對話方塊。
在某些情況下(例如,當用戶切換標籤頁時),瀏覽器可能不會顯示對話方塊,或者可能不會等待使用者提交文字或取消對話方塊。
語法
js
prompt()
prompt(message)
prompt(message, defaultValue)
引數
message可選-
要顯示給使用者的文字字串。如果提示視窗中沒有內容顯示,則可以省略。
defaultValue可選-
包含在文字輸入欄位中顯示的預設值的字串。
返回值
包含使用者輸入的文字,或 null 的字串。
示例
使用帶有訊息和預設值的 prompt
以下示例顯示瞭如何檢查 prompt 的返回值。當用戶單擊“確定”按鈕時,將返回輸入欄位中輸入的文字。如果使用者在不輸入任何文字的情況下單擊“確定”,則返回一個空字串。如果使用者單擊“取消”按鈕,此函式將返回 null。
html
<button id="signButton">Check star sign</button>
<pre id="log"></pre>
js
const signButton = document.querySelector("#signButton");
const log = document.querySelector("#log");
signButton.addEventListener("click", () => {
let sign = prompt("What's your sign?");
if (sign === null) {
log.innerText = "OK, maybe next time.";
} else if (sign.toLowerCase() === "") {
log.innerText = "Don't be shy, enter your sign!";
} else if (sign.toLowerCase() === "scorpio") {
log.innerText = "Wow! I'm a Scorpio too!";
} else {
log.innerText = `${sign} is my favorite!`;
}
});
Prompt 訊息和預設值
有多種使用 prompt 的方法,包括使用 prompt、window.prompt,以及提供訊息和預設值。
js
// open a blank prompt window
sign = prompt();
// open a blank prompt window
sign = window.prompt();
// open a prompt with the text "Are you feeling lucky"
sign = window.prompt("Are you feeling lucky");
// open a prompt with the text "Are you feeling lucky" and "sure" as the default value
sign = prompt("Are you feeling lucky", "sure");
注意
對話方塊是模態視窗——它們會阻止使用者訪問程式介面的其餘部分,直到對話方塊關閉。因此,您不應過度使用任何建立對話方塊或模態視窗的函式。或者,可以使用 <dialog> 元素進行確認。
prompt 對話方塊包含一個單行文字框、一個“取消”按鈕和一個“確定”按鈕,並返回使用者在該文字框中輸入的(可能為空的)文字。結果是一個字串,這意味著您有時應該轉換使用者提供的值。例如,如果他們的答案應該是數字,則應將值轉換為 Number。
js
const number = Number(window.prompt("Type a number", ""));
規範
| 規範 |
|---|
| HTML # dom-prompt-dev |
瀏覽器相容性
載入中…