Javascript中的电子邮件验证检查
email validation checking in Javascript
我想验证输入的字符串是否为电子邮件格式。我有点困惑。我试图编写下面的代码,但失败了。请阿尤恩帮帮我。
Javascript Code:
<script>
function emailValidation(id)
{
var emailPattern = var emailPattern = /^'w+([-+.']'w+)*@'w+([-.]'w+)*'.'w+([-.]'w+)*$/;
if (emailPattern.test(id) === false)
{
alert("not a valid email address.");
}
document.getElementById(id).value = "";
}
</script>
HTML Code:
<input type="text" id="empemail" onblur="emailValidation('empemail')" name="email" placeholder="eg: aaa@abc.ca" required="">
您还可以使用 HTML5 通过将类型更改为 email
来验证电子邮件输入字段:
<input type="email" name="email">
如果你不想使用HTML5并依赖javascript,你可以按照@springrolls建议使用这个线程。你的 JavaScript 代码中也有一个错误:
var emailPattern = var emailPattern = ...
而且您也没有正确传递输入字段中的值。这就是为什么你的函数总是返回 false。试试这个jsfiddle:
function emailValidation(id)
{
var emailPattern = /^'w+([-+.']'w+)*@'w+([-.]'w+)*'.'w+([-.]'w+)*$/;
var email = document.getElementById(id).value
if (emailPattern.test(email) === false)
{
alert("not a valid email address.");
}
}
另外,不要忘记检查电子邮件输入服务器端。如果你使用的是PHP,你可以使用这样的东西:
$email = $_POST["email"];
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$error = "Invalid email format";
}
试试这个模式。
var emailPattern = /[a-z0-9!#$%&'*+'/=?^_`{|}~-]+(?:'.[a-z0-9!#$%&'*+'/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?'.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/i;
您可以使用 https://regex101.com/测试模式
您还可以通过在输入字段中添加 type="email" 来使用 HTML5 验证例:
<!DOCTYPE HTML>
<html>
<head>
<title>Test Email Submit</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>
<body>
<form action="/submitForm">
Email:<br>
<input type="email" name="email"><br>
<input type="submit" value="Submit">
</form>
</body>
</html>
function isValidEmail(email) {
var filter = /^([a-zA-Z0-9_'.'-])+'@(([a-zA-Z0-9'-])+'.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email)) {
return false;
}
return true;
}
如果电子邮件有效,则返回 true,否则返回 false
相关文章:
- Javascript中的电子邮件验证检查
- 如何在Netsuite Suitelet脚本中进行验证检查
- 多重验证检查 - 逻辑错误
- jqBootstrapValidation.js中的 Javascript 用户名验证检查
- 禁用对单个非映射选项字段的验证检查
- 推送提交后,如果输入字段为黑色,则显示验证检查或以红色字母显示警告
- Javascript 和 HTML 表单验证检查
- Jquery验证插件,使用选项的数据元素作为验证检查
- 在 C# 和 JavaScript 中对手机号码进行验证检查
- jQuery 验证 - 检查两个密码是否相等
- 使用javascript验证检查将文件上载到文件夹-ASP.NET
- AngularJS - 表单自定义验证 - 检查是否至少有一个输入为空
- jQuery表单验证-检查电子邮件是否相同
- 如何对数据库变量进行健全性和验证检查
- 验证检查输入的长度
- 如何在解析前取消/忽略AngularJS异步验证检查
- 并不是所有的验证检查都在提交时执行
- 只有当验证检查返回true时才通过ajax POST
- Angular的ui-router,可以在其他解决之前解决一个身份验证检查
- javascript验证检查点击条件从HTML