2011-09-26 137 views
0

我不想給我們一個簡單的電子郵件驗證插件,所以我試圖創建自己的,但它不工作。它總是返回假。這裏是我的代碼:jQuery/Javascript的自定義電子郵件驗證不起作用

var regex = /\A[\w+\-.][email protected][a-z\d\-.]+\.[a-z]+\z/i; 

if(regex.test($("#email").val())) 
{ 
    //pass 
} 

我在做什麼錯?謝謝!

+1

什麼是世界上的\ A和\ z?據我所知,不是JavaScript reg exp的一部分。 – epascarello

+0

@epascarello:它意味着在多行正則表達式('m'標誌)中錨定字符串的開始和結束,但AFAIK JavaScript從未支持它們。 – alex

回答

3

我會假設,\A應該是^\z應該是$

0

這裏是我使用至REGx我project.It正常工作

    var emailReg = /^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/; 
        if (emailReg.test($('#Email').val())) {  
         //pass 
        } 
0

可能,這將解決這個問題

var regex = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; 
if(rege.test($('#email').val())) 
{ 
    //do something 
} 
0

試試這個正則表達式:

var regex= /^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/; 
0

試試這個代碼..

<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>