因此,我尝试编写代码,以三种方式之一评估电话号码是否有效。
第一个格式为 xxx-xxx-xxxx,第二个格式为 (xxx) xxx-xxxx,第三个格式为 xxxxxxxxxx。
这是我的正则表达式:
if (/^\d{3}-\d{3}-\d{4}$/.test(phoneVal) || /^\d{10}$/.test(phoneVal) || /^\(\d{3}\) \d{3}-\d{4}$/.test(phoneVal)) {
return true;
}
但是,每当我输入我认为有效的电话号码时,它就会触发此正则表达式,并给出错误:
else {
alert("Please put in a correct phone number");
return false;
}
最佳答案
When running this: phoneVal = document.getElementById("phone"); alert(phoneVal); I get: [Object HTML InputElement]
您获取的是元素而不是它的值。使用 value
属性:
phoneVal = document.getElementById("phone").value;
关于javascript - 正则表达式验证电话号码的 3 种特定形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8401977/