【发布时间】:2012-05-29 15:15:28
【问题描述】:
我试图让我的登录表单仅验证是否只输入了数字。如果输入只是数字,我可以工作,但是当我在数字后输入任何字符时,它仍然会验证等。12akf 将工作。凌晨 1 点会工作。我怎样才能克服这个问题?
部分登录
<form name="myForm">
<label for="firstname">Age: </label>
<input name="num" type="text" id="username" size="1">
<input type="submit" value="Login" onclick="return validateForm()">
function validateForm()
{
var z = document.forms["myForm"]["num"].value;
if(!z.match(/^\d+/))
{
alert("Please only enter numeric characters only for your Age! (Allowed input:0-9)")
}
}
【问题讨论】:
-
你最好使用 test,它返回一个布尔值:
if (/\D/.test(z)) {/* non-digit found */}。 -
最好将监听器放在表单上,因为它可以在不按提交按钮的情况下提交。
标签: javascript validation numbers