什么'这个验证函数有问题
What's wrong with this validation function?
我无法使用此正则表达式/^(?(''d{3}(?验证电话号码?[..-/]?(''d{3}([.-/]?(''d{4}($/;前三位数字位于括号(xxx(xxx-xxxx中。我试着用if/else循环测试电话号码,但有些东西不起作用,我找不到我做错了什么。谢谢你的帮助。
function validatePhone() {
var pNumber = document.getElementById("phoneprompt").value;
var regex = /^'(?('d{3})')?['.'.-'/]?('d{3})['.'-'/ ]?('d{4})$/;
if (regex.test(pNumber)) {
document.getElementById("phoneprompt").innerHTML = "<img src='"greencheck.png'" />";
return (true);
} else {
document.getElementById("phoneprompt").innerHTML = "<img src='"redcheck.png'" /> Phone numbers must be in (xxx) xxx-xxxx format";
return (false);
}
}
除了正则表达式的问题之外,您不能设置输入文件的innerHTML,因此
function validatePhone() {
var el = document.getElementById("phoneprompt"),
pNumber = el.value,
regex = /^'(?('d{3})')?'s?['.'.-'/]?('d{3})['.'-'/ ]?('d{4})$/,
valid = regex.test(pNumber);
if (valid) {
document.getElementById("phonepromptmsg").innerHTML = "<img src='"greencheck.png'" />";
} else {
document.getElementById("phonepromptmsg").innerHTML = "<img src='"redcheck.png'" /> Phone numbers must be in (xxx) xxx-xxxx format";
}
return valid;
}
<input id="phoneprompt" onchange="validatePhone()" />
<span id="phonepromptmsg"></span>
<br />
<input type="button" onclick="validatePhone()" value="Test"/>
您可以更改
/^'(?('d{3})')?['.'.-'/]?('d{3})['.'-'/ ]?('d{4})$/
至
/^'(?('d{3})')?'s?['.'.-'/]?('d{3})['.'-'/ ]?('d{4})$/
以容纳可选地位于区号之后的空间,因此(xxx) xxx-xxxx
和(xxx)xxx-xxxx
都将匹配。
然而,这里有一个更强大的10位电话号码正则表达式,其中括号和破折号是可选的:
/^('+'d{1,2}'s)?'(?'d{3}')?['s.-]?'d{3}['s.-]?'d{4}$/
这些都将匹配:
(123(456-7890
(123(456-7890
123-456-7890
123 456 7890
Ref:与标准10位电话号码匹配的正则表达式
相关文章:
- 使用jquery验证函数不适用于select元素
- ng if不验证函数
- 我需要帮助来调用add()函数和验证函数,所以首先它将验证和然后添加
- 所需字段的验证函数更短
- Javascript验证函数总是回复无效
- 如何包含来自另一个 PHP 文件的 PHP 验证函数
- 如何编写验证函数以仅读取 XLS 和 XLSX 格式的 Excel 文件
- .each() 在 .clone() 之后用于验证函数
- 当 openssl 命令行验证签名时,节点.js验证函数不会验证签名
- 在 jQuery 中组合验证函数并替换类名
- 自定义验证程序客户端验证函数未触发
- 我们可以在 Java 脚本验证函数中包含 jQuery 吗?
- 具有返回值的验证函数
- JavaScript 编号验证函数
- 如何编写一个测试来验证函数是否已成功将字符串列表(在数组中指定)打印到屏幕上
- 将另一个验证函数附加到 Javascript 表单验证逻辑
- 简单的Javascript验证函数
- 我的表单未使用 jquery 验证函数进行验证
- ASP.NET - 在提交表单之前调用 javascript 验证函数
- 如何对输入标记调用验证函数