我正在努力使用HTML代碼來驗證外部js文件中Javascript提示符()的輸入。我知道調用Javascript函數進行驗證,並且我知道如何編寫函數,但是如何「監聽」HTML中的提示和後續輸入?Javascript Prompt()輸入驗證
提示是否必須在HTML文檔中以表單形式完成?
我正在努力使用HTML代碼來驗證外部js文件中Javascript提示符()的輸入。我知道調用Javascript函數進行驗證,並且我知道如何編寫函數,但是如何「監聽」HTML中的提示和後續輸入?Javascript Prompt()輸入驗證
提示是否必須在HTML文檔中以表單形式完成?
對不起,我不能等着......這裏是我在我的評論中提及上面的代碼。 jsFiddle live example here。
這是一個完全有效的獨立示例。只需複製/粘貼到文件並運行即可。
請注意,您必須在代碼本身之前引用/加載jQuery和jQueryUI庫(在此完成代碼)。
老實說,對於網站來說,提示()對於這些日子來說是個壞主意。也許這更像你想做的事情。驗證(用戶輸入的內容)在對話框的close
部分完成。
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/base/jquery-ui.css" />
<script type="text/javascript">
$(document).ready(function() {
$('#mybutt').click(function() {
$('#msg').dialog({
autoOpen:true,
modal:true,
title: 'This is a question:',
buttons: {
Go: function() {
$(this).dialog('close');
}
},
close: function() {
var s = $('#sumpin').val();
if (s.length<15)
alert('Please type more than 15 characters');
else
alert('You typed: ' + s);
}
});
});
}); //END $(document).ready()
</script>
</head>
<body>
<div id="msg" style="display:none">
Type something here:<br />
<input id="sumpin" type="text">
</div>
<br />
<input type="button" id="mybutt" value="Click Me">
</body>
</html>
prompt
正在阻塞。無論輸入什麼內容,只有在確定按鈕被點擊(或按下輸入)後纔會返回。
var foo = prompt('bar', 'baz');
if (some_condition(foo)) {
// do something
} else {
// do something else
// (which might be to recursively call the function this code
// is inside until an acceptable result is received)
}
提示將返回您在對話窗口中輸入的值。使用返回的值來做任何你想做的事情。像這樣:
var answer = prompt("<something>");
//stuff with answer
你說的是'window.prompt'函數嗎? https://developer.mozilla.org/en-US/docs/Web/API/window.prompt。如果是,在打字時無法驗證輸入。您只能在用戶提交值後驗證值*。 –
你不聽它,prompt()是同步的,並將其結果返回給關閉對話框時立即調用它的人。 – dandavis
是的,window.prompt(「輸入你的名字」) – user2502053