Как использовать Ajax в ASP.NET для проверки идентификатора электронной почты? Помоги мне - PullRequest
0 голосов
/ 06 августа 2009

Как использовать Ajax в ASP.NET для проверки идентификатора электронной почты.

Ответы [ 3 ]

1 голос
/ 06 августа 2009

Так как вы не приводите конкретный случай. поэтому позвольте мне поделиться фрагментом кода моей страницы регистрации. Вот как я могу использовать ajax, чтобы проверить, зарегистрирован ли адрес электронной почты.

на странице 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>

на register.aspx.cs:

protected void TxtEmail_TextChanged(object sender, EventArgs e)
{
    // Server side validation
    if ( EmailRegistered(TxtEmail.txt) )
    {
       LblEmailStatus.Text = "use other email!";
    }
}
1 голос
/ 23 марта 2011
<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>

код-за:

[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;
}
1 голос
/ 06 августа 2009

Вы можете использовать регулярное выражение для проверки адреса электронной почты в формате . Вот статья об этом. Как найти или проверить адрес электронной почты . Вы можете добавить валидатор регулярного выражения и установить требуемое регулярное выражение.

Если вы ищете для проверки электронной почты (существует или не существует), то нет другого способа, кроме отправки электронной почты и проверки его возврата.

Это не статья для .net и о валидаторе регулярных выражений

Пожалуйста, объясните больше, если я ошибаюсь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...