2010-11-18 23 views
0

E-postaları doğrulamak için javascript işlevinde normal ifadeyi kullanın. asp.net özel validator kullanarak javascriptfunction çağırmak. e-posta doğrulama çalışıyor. metin kutusuna tıkladığımda, imleç metin kutusunun ortasındadır. Metin kutusu boşsa, metnin sonuna veya metin kutusunun başına geçmez. Bu hata hakkında herhangi bir fikrin var mı?ASP.NET metin kutusu ve Normal İfade

<asp:TextBox ID="txt_piEmail" CssClass="txtbox" runat="server" Text=""></asp:TextBox> 

<asp:CustomValidator ID="custom_valPatientInfoEmail" Display="None" ErrorMessage="Email" runat="server" ControlToValidate="txt_piEmail" SetFocusOnError="true" ClientValidationFunction="validEmail"> 

.txtbox { 
font-size: 11px; 
height:15px; 
font-weight: normal; 
color: #333333; 
line-height: 18px; 
border: 1px solid #b8c6d1; 

}

function validEmail(src, args) { 



    args.IsValid = true; 

    var email = document.getElementById("<%=txt_piEmail.ClientID%>"); 

    var emailID = email.value; 


    var message = ""; 
    var list; 
    if (emailID.indexOf(';') > 0) 
     list = emailID.split(';'); 
    else 
     list = emailID.split(','); 
    for (y = 0; y < list.length; y++) { 
     if (trimString(list[y]) != '') 
      if (echeck(trimString(list[y])) == false) { 

       args.IsValid = false; 



      } 
    } 


    } 



     function trimString(str) { 
    //str = this != window? this : str; 
    return str.replace(/^\s+/g, '').replace(/\s+$/g, ''); 
} 

i REGULAREXPRESSION doğrulayıcı kullanabilir. Düzenli ifade doğrulayıcı için normal ifadem yok. Aşağıdaki format için e-posta doğrulamak için wan: 1. [email protected] - e-posta kimliği arasındaki boşluk. [email protected] - boşluk

sondaki olmadan
+1

Lütfen javascript işlevinizin kodunu gösteriniz. Ayrıca, bunun için neden bir RegularExpressionValidator kullanmıyorsunuz? –

+0

Txtbox CSS sınıfının kodunu gönderir misiniz? Bu sınıfta bunu yapıyormuşsun gibi geliyor. –

cevap

0


i nchar olarak veritabanında posta alanını ayarlayın. şimdi onu varchar olarak değiştirdim. iyi çalışıyor.

0
Sen o gibi bir şey olurdu "düzenli ifade doğrulayıcı"

kendini bir baş ağrısı kaydetmek ve kullanmak isteyebilirsiniz

:

<asp:TextBox ID="txt_piEmail" CssClass="txtbox" runat="server" Text=""></asp:TextBox> 
<asp:asp:RegularExpressionValidator runat="server" id="regexVal" ControlToValidate="txt_piEmail" ValidationExpression="^[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}$" Display="None" ErrorMessage="Email" /> 

Bu, IN JAVASCRIPT ve sunucuda geçerli olacaktır (etkinliğinizde bir çeşit page.validate yaptığınız varsayılarak).
Gerçek normal ifadeyi kapatabilirsin, sadece ilk google sonucundan çıkardım.
Burada bu konuda daha fazla bilgi edinebilirsiniz: http://msdn.microsoft.com/en-us/library/eahwtc9e.aspx