prompt彈出的詢問框,點擊取消真的是返回null嗎
var myname=prompt("請輸入你的姓名:");
if(myname!=null)
?{ ? alert("你好"+myname); }
else
?{ ?alert("你好 my friend."); ?}
這段代碼我試驗過了,點擊取消之后,會彈出“你好 ?”,并不會彈出“你好 my friend”,所以想問一下,prompt彈出詢問框的時候真多是返回nul嗎
-----------------------------------------9.21補充------------------------------------------
感謝各位的回答,我剛試了幾遍一直都是同樣的結果,然后想到是不是瀏覽器的原因,結果果然是的。在Chrome上點擊取消
結果是 “你好 my friend”,但是在Safari上,返回的結果就是“你好 ? ”,在Stack Overflow查詢的結果是很久以前Safari
就開始這樣了,在prompt彈出的對話框中,點擊取消或者是不輸入內容點擊確定都會返回空的字符串,所以會出現這種結果。
目前還在學習基礎階段暫時就不深究了,先學下去再說,寫在這里希望幫助其他遇到同樣問題的同學。
---------------------------------以下是我的代碼----------------------------------------
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>testprompt</title>
<script type="text/javascript">
function sayhello()
{
var myname=prompt("請輸入你的姓名:");
if(myname!=null)
{ ??
alert("你好"+myname);?
}
else
{ ?
alert("你好 my friend."); ?
}
}
</script>
</head>
<body>
<form>
<input type="button" value="Click on me!" onclick="sayhello()">
</form>
</body>
</html>
----------------------------------------------------------------------------------
Safari的10.0版本修復了這個bug
2016-09-20
是返回的null,我在我的電腦上試了一下這段代碼,直接點擊取消后,返回的是 你好 my friend
2016-10-13
贊 ?有問題就提問才是好碼農!
2016-09-20
是這樣的
2016-09-20
親,你好
點擊取消真的是返回null
你的代碼我放到我機器上跑了一下,按取消是彈出你好 my friend
如果用戶單擊提示框的取消按鈕,則返回 null。如果用戶單擊確認按鈕,則返回輸入字段當前顯示的文本。
http://www.w3school.com.cn/jsref/met_win_prompt.asp?這是參考手冊