是否可以使用javascript将字段验证为特定的数字集?例如,在邮政编码字段中,您只能输入要接受的四个数字,例如2747,2750,2753,2760,2777。任何其他号码将被视为虚假。我已经做了一些搜索,但我似乎无法找到适用于这种特定情况的任何东西,而且我对javascript非常了解,所以任何形式的帮助都会很棒。
答案 0 :(得分:1)
应该非常简单:
Object
,其中每个数字都作为一个键,而不是属性。var validNumbers = JSON.parse(serverResponse);
//跳过Object
,而不是Array
。 Array.prototype.indexOf
速度较慢,需要填充。var validNumbers = {"2747": "2747", etc..}
if (typeof validNumbers[userInput] !== undefined) {//valid} else {//invalid}
答案 1 :(得分:0)
试试这个。
<html>
<head>
<script>
function validateForm() {
var x = document.getElementById("entry_834285895").value;
if ((x != 3242 )&&(x != 2342 )&&(x != 2343 )&&(x != 1111 )) {
document.getElementById("um").innerHTML = ('Invalid');
document.getElementById("um").style.color = 'Red';
}
else {
document.getElementById("um").innerHTML = ('Valid');
document.getElementById("um").style.color = 'Green';
}
}
</script>
</head>
<body>
<p>Valid numbers:<br> 3242<br>2342<br>2343<br>1111
<form name="myForm" action="" target="hiddenFrame"
onsubmit="return validateForm()" method="post" >
Name: <input id="entry_834285895" type="text" name="fname">
<input type="submit" value="Submit">
<div id="um"></div>
</form>
<iframe name="hiddenFrame" style="display:none;"></iframe>
</body>
</html>