0

我正在使用 jQuery 来识别用户何时提交了表单。然后我使用 xajax 调用一个 php 方法来查询数据库并确保用户名和电子邮件地址未被使用。


  $('#newUserForm').submit(function() {
      var FormName = $(this).attr('name');
      xajax_validateEmailAddressAndUsername(xajax.getFormValues(FormName));
  });

然后在 validateEmailAddressAndUsername 中查询数据库并以这种方式验证。

我遇到的问题是 jquery 是异步的,在提交表单之前,我无法添加具有正确 xajax 响应的脚本。我该如何解决这个问题?
我应该以不同的方式来做吗?

谢谢

4

1 回答 1

0

有时我只使用#(obj).submit() 会遇到麻烦。.bind 似乎更可靠。我认为你可以做这样的事情(未经测试):

$('#newUserForm').bind('submit', function() {
     var FormName = $(this).attr('name');
     if (xajax_validateEmailAddressAndUsername(xajax.getFormValues(FormName))) {
          $(this).submit();
     }
     else {
         alert("Oh no!"); 
         return false;
     }
}
于 2009-09-21T22:57:59.787 回答