用jquery需要帮助ajax

时间:2013-01-24 06:21:26

标签: javascript jquery ajax

  

可能重复:
  How to return the response from an AJAX call from a function?

我正在创建一个包含电子邮件ID和密码的注册页面。我在注册页面中调用了onsubmit事件,调用了checkData()函数,该函数写在common.js文件中。我有一个ajax函数来检查数据库中是否存在电子邮件ID?但我的问题是,当我完成检查后我保持警报信息我的ajax功能正常但如果警报被删除它输入数据到数据库。这是ajax的代码

   else
   {
       $(function() {

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

                       }
                    }

              });              


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

   }    
   alert(Valid);
   return Valid;

1 个答案:

答案 0 :(得分:1)

ajax不会那样工作。 success代码将在 {/ 1}}代码后执行 99.9%的时间(如果不是100%的话)。当<{1}}被调用时,您 无法保证

相反,您需要在return Valid回调中完成所有工作,或者( shudder )使其同步。

因此,如果您依赖它进行验证,则需要停止提交表单,然后使用success方法提交表单。