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 に答える