我不想给我们一个简单的电子邮件验证插件,所以我试图创建自己的,但它不工作。它总是返回假。这里是我的代码:jQuery/Javascript的自定义电子邮件验证不起作用
var regex = /\A[\w+\-.][email protected][a-z\d\-.]+\.[a-z]+\z/i;
if(regex.test($("#email").val()))
{
//pass
}
我在做什么错?谢谢!
我不想给我们一个简单的电子邮件验证插件,所以我试图创建自己的,但它不工作。它总是返回假。这里是我的代码:jQuery/Javascript的自定义电子邮件验证不起作用
var regex = /\A[\w+\-.][email protected][a-z\d\-.]+\.[a-z]+\z/i;
if(regex.test($("#email").val()))
{
//pass
}
我在做什么错?谢谢!
我会假设,\A
应该是^
和\z
应该是$
。
这里是我使用至REGx我project.It正常工作
var emailReg = /^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/;
if (emailReg.test($('#Email').val())) {
//pass
}
可能,这将解决这个问题
var regex = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
if(rege.test($('#email').val()))
{
//do something
}
试试这个正则表达式:
var regex= /^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
试试这个代码..
<script language="javascript" type="text/javascript">
function EmailValidation(email) {
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email.value)) {
alert('Please provide a valid email address');
email.focus;
return false;
}
}
和HTML。
<div>
<asp:TextBox ID="TextBox1" runat="server" onchange="EmailValidation(this)"></asp:TextBox>
</div>
什么是世界上的\ A和\ z?据我所知,不是JavaScript reg exp的一部分。 – epascarello
@epascarello:它意味着在多行正则表达式('m'标志)中锚定字符串的开始和结束,但AFAIK JavaScript从未支持它们。 – alex