2013-01-24 52 views
-8

我有電子郵件和密碼,呼籲對功能和registration.php頁面提交 即面對的問題與阿賈克斯與jQuery

  the function ChkVal() is written in comman.js file i.e 

     function ChkVal() 
     { 
       var Valid = true; 
       var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; 
       var address = document.getElementById("Email").value; 
       if(reg.test(address) == false) 
       { 
     ////somecode to check if it is valid email id or not 
       } 
       else 
       { 


    this is the section where i have the problem 

        $(function() { 

          $.ajax({ 
           url : 'RegCheck.php', 
           type : 'POST', 
           data : 'User=' + address, 
           success : function(result){ 
            if(result != "No") 
            { 
             document.getElementById("EmailChk").innerHTML = result; 
///the result return from RegCheck.php will be Either already exist or No 


             Valid = false; 
            } 
           } 

          });    


        });       
        document.getElementById("MailMand").innerHTML = "" ; 

       } 

,如果我在這裏把警報消息則沒有問題或向下的任何地方前返回有效但如果我刪除警報消息,然後查詢將數據插入數據庫...

   return Valid; 

     }; 
+1

您的請求是異步的,那麼立即設置有效值。另外你的代碼設計不正確。你正在使用jQuery,那麼爲什麼不使用驗證插件?示例http://alittlecode.com/files/jQuery-Validate-Demo/ –

+0

使用電子郵件和密碼註冊???? –

+0

並使用$(「EmailChk」)。html(...);現在你有jQuery – mplungjan

回答

2

你必須學習更多關於jQuery的AJAX
從ajax的響應應該在html的形式。您可以在success區塊上請alert它,然後您可以瞭解問題。
只要嘗試這樣。

else 
{ 
    $.ajax({ 
      url : 'RegCheck.php', 
      type : 'POST', 
      data : {User: address}, 
        success : function(result){ 
         alert(result); 
         if(result != "No") 
         { 
         document.getElementById("EmailChk").innerHTML = result;      Valid = false; 
         } 
        } 

       });    



} 
+0

我不想彈出警告消息,而是希望結果顯示在標籤標記$('#EmailChk')。append(result);如果結果不等於NO,並且結果等於NO,則將其插入數據庫 –

+1

我不是這個意思。我添加了警報來檢查'ajax'的響應。按照我的說法,編輯「數據」。這是通過'ajax'請求傳遞變量的正確方法。 –