尝试在表单中添加一些验证,但是它总是表现得好像正在验证的数据是无效的,即使它是有效的!
if (document.getElementById("mileageNumber").value == /^[0-9]+$/)
{
if (document.getElementById("vehicleNumber").value == /^[0-9]+$/)
{
<Desired Action>
}
else
{
alert("Please Enter Numbers Only");
}
}
else
{
alert("Please Enter Numbers Only");
}有人能看到我做错了什么吗?
发布于 2013-10-19 14:59:06
您需要测试regex,而不是将其计算为值。
if(/^[0-9]+$/.test(document.getElementById("vehicleNumber").value)){
//Validation passed
}发布于 2013-10-19 14:58:29
您需要使用RegExp.test方法。
/^[0-9]+$/.test(document.getElementById("mileageNumber").value);您还可以简化正则表达式,如:/^\d+$/
发布于 2013-10-19 15:04:53
您正在将字符串与regex对象进行比较。regex对象描述regex对象的结构。字符串只是一堆字符。他们根本不是一回事..。永远不会。就像伪代码apples == carrots永远不会返回true一样,string == regex也不会返回。它需要一个函数来测试字符串是否具有regex对象描述的结构。
可以使用string.match( .. )对正则表达式正确地测试字符串。
document.getElementById("vehicleNumber").value.match( /^[0-9]+$/ );https://stackoverflow.com/questions/19467378
复制相似问题