-1 votes

Comment utiliser Ajax en ASP.NET pour la validation de l'ID de l'email ? Aidez-moi

Comment utiliser Ajax en ASP.NET pour la validation de l'ID de l'email.

1voto

Shoban Points 18742

Vous pouvez utiliser une expression régulière pour valider un courriel format . Voici un article à ce sujet. Comment trouver ou valider une adresse électronique . Vous pouvez ajouter un validateur d'expression régulière et définir l'expression régulière requise.

Si vous cherchez à valider un courriel (existe ou n'existe pas), il n'y a pas d'autre moyen que d'envoyer le courriel et de vérifier s'il rebondit.

Voici un autre article pour .net y à propos du validateur d'expressions régulières

Veuillez m'expliquer davantage si je me trompe.

1voto

Anwar Chandra Points 4341

Puisque vous ne donnez pas de cas précis. Je vais donc vous faire part de l'extrait de code de ma page d'enregistrement. Voici comment j'utilise ajax pour vérifier si une adresse email a été enregistrée.

sur la page register.aspx :

<asp:UpdatePanel ID="UpdatePanel_CheckEmail" 
  UpdateMode="Conditional" runat="server">

  <ContentTemplate>
    <asp:Label ID="LblEmail" AssociatedControlID="TxtEmail" 
      runat="server">
      <span>*</span>Email:
    </asp:Label>

    <!-- Server side validation -->
    <asp:TextBox ID="TxtEmail" 
       ontextchanged="TxtEmail_TextChanged" 
       AutoPostBack="true" runat="server" />

    <small>
      <asp:Literal ID="LblEmailStatus" runat="server" Text="" />
    </small>

    <!-- Client side validation -->
    <asp:RegularExpressionValidator ID="TxtEmailRegEx" runat="server" 
       ErrorMessage="Enter a valid email address to sign up"
       ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" 
       ControlToValidate="TxtEmail" />

  </ContentTemplate>
</asp:UpdatePanel>

sur register.aspx.cs :

protected void TxtEmail_TextChanged(object sender, EventArgs e)
{
    // Server side validation
    if ( EmailRegistered(TxtEmail.txt) )
    {
       LblEmailStatus.Text = "use other email!";
    }
}

1voto

vikram Points 11
<script src="../Scripts/jquery-1.4.4.min.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">

    $(document).ready(function () {
        $("#ctl00_ContentPlaceHolder1_txtEmail").blur(function () {

            var prmList = '';
            prmList += '{"emailAddress":"' + $("#ctl00_ContentPlaceHolder1_txtEmail").val() + '"}';
            $.ajax({
                type: "POST",
                url: window.location.pathname + "/CheckEmailId",
                data: prmList,
                async: false,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (msg) {
                    if (msg.d == 'true') {
                        $("#ctl00_ContentPlaceHolder1_lblUserEmailExist").html('This email is already exists.');
                        $("#ctl00_ContentPlaceHolder1_lnkbtnSave").hide();

                    }
                    else {
                        $("#ctl00_ContentPlaceHolder1_lblUserEmailExist").html('Valid email id');
                        $("#ctl00_ContentPlaceHolder1_lnkbtnSave").show();

                    }
                    //                    alert(msg.d);

                    //window.location = "../DataEntry/AddMemberList.aspx";
                },
                error: function (msg) { }
            });

        });

    });
</script>

code-behind :

[WebMethod]
public static string CheckEmailId(string emailAddress)
{
    string isExitst = string.Empty;
    if (!string.IsNullOrWhiteSpace(emailAddress))
    {
        if (FetchEmailID(emailAddress))
            isExitst = "true";

        else
            isExitst = "false";
    }
    return isExitst;
}
public static bool FetchEmailID(string emailAddress)
{
    bool isExist = false;
    DowEntities dataContext = new Entities();
    TblDataEntry data = new TblDataEntry();
    var rec  = (from m in dataContext.TblDataEntries where m.Email == emailAddress select m).ToList();
    //data = dataContext.TblDataEntries.Where(x => x.Email == emailAddress).ToList();
    if (rec.Count() > 0 && rec.First().Email == emailAddress)
    {
        isExist = true;

    }
    else
    {
        isExist = false;

    }
    return isExist;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X