私は、コールバックレースのように見えるものを含むかなり古典的な問題だと思うものを持っていますが、私のすべての読書にもかかわらず、私はまだ立ち往生しています。以下に貼り付けられたコードがあります。
これは単純なログインフォームであり、特定のボタンがクリックされると、フォームデータを外部のphpファイルに「ajaxically」送信することがわかります。phpが実行されたら、結果を受け取ります。ここでのテストとして、phpファイルから電子メールアドレスを警告します。
これを実行すると、ajaxコールバックが実行されません。ボタンをすばやく繰り返しクリックすると、適切なアラートが表示されます。追加のアラートを入力すると、正しい応答も得られます。
これらの他の愚かなことをせずにそれを実行するにはどうすればよいですか?
よろしくお願いしますRR
$('#'+this.loginForm[0].parentId+"logIn")
.on('click', function() {
var jax = $.ajax(
{
type: "POST",
url: "../sharedfunctions3/act-membership.php",
data: {email: document.getElementById(that.parentId+'email').value,
password: document.getElementById(that.parentId+'password').value,
path: that.path,
action: "logIn"
}
});
jax.done(function()
{
obj = JSON.parse($.trim(jax.responseText));
alert(obj.email);
});
jax.fail(function() { alert("error"); });
alert(1);
});