Javascript 验证总是无法验证

Javascript 验证总是无法验证,javascript,validation,Javascript,Validation,尝试向表单中添加一些验证,但它会一直表现为正在验证的数据无效,即使其有效 if (document.getElementById("mileageNumber").value == /^[0-9]+$/) { if (document.getElementById("vehicleNumber").value == /^[0-9]+$/) { <Desired Action> } else { alert("

尝试向表单中添加一些验证,但它会一直表现为正在验证的数据无效,即使其有效

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");
}
if(document.getElementById(“mileageNumber”).value=/^[0-9]+$/)
{
if(document.getElementById(“vehicleNumber”).value=/^[0-9]+$/)
{
}
其他的
{
警告(“请仅输入数字”);
}
}
其他的
{
警告(“请仅输入数字”);
}
有人能看出我做错了什么吗?

你需要使用这个方法


您还可以将正则表达式简化为:
/^\d+$/

您需要测试正则表达式,而不是将其作为值进行计算

if(/^[0-9]+$/.test(document.getElementById("vehicleNumber").value)){

    //Validation passed

}

您正在将字符串与正则表达式对象进行比较。正则表达式对象描述正则表达式对象的结构。字符串只是一堆字符。他们根本不是一回事。。。曾经就像伪代码apples==carrots永远不会返回true一样,
string==regex
也永远不会返回。它需要一个函数来测试字符串是否具有regex对象描述的结构

您可以使用适当的方法针对正则表达式测试字符串

if(/^[0-9]+$/.test(document.getElementById("vehicleNumber").value)){

    //Validation passed

}
document.getElementById("vehicleNumber").value.match( /^[0-9]+$/ );