0
function validateEmail(){
    var check =email();
    alert(check);    
}
function email()
{
    var TCode = document.getElementById('email').value;
    var result="hey";
    $.ajax({
        type: "POST",
        async: false,
        url: "get_email.jsp",
        data: "email="+TCode,
        success: function(html){
            $("#email_info").html(html);
            result=$("#email_info").html(html);
            return result;
        }
    });
}

get_email.jsp:

<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="bean.*" %>
<%@ page import="database.*" %>


<%  

                                                int flag=0;
                                                String Email=request.getParameter("email");
                                                userDAO UD=new userDAO();
                                                flag=UD.getEmailInfo(Email);
                                                if(flag==1)
                                                {
                                                    %>
                                                 Available
                                                <% }
                                                else
                                                {%>Not Available
                                            <%}%>

注: 私の AJAX 関数は同期的です

関数検証メールから、jspページを呼び出す関数メールを呼び出しています。データベース内のメールが既に存在するかどうかを確認します。そこから、ページに表示されるテキストを返しますが、必要なのは、いくつか取得することですこのajax関数からの値と同様に、電子メールIDが既に存在する場合、ユーザーはフォームを送信できませんが、電子メール機能の検証で値を取得できません...未定義の値が得られます。

4

3 に答える 3

1

すべてのポスト ajax 処理をsuccessコールバックに入れます。

于 2013-06-06T20:26:02.727 に答える