AJAX呼び出しは非同期です。つまり、実行している方法でAJAX呼び出しを順番に呼び出すことはできません。
代わりに、呼び出しでコールバック関数を利用する必要があり$.ajax()
ます。あなたはこのようなものになってしまうでしょう:
function func(param) {
// Other stuff
$.ajax({
success: func(param2)
})
}
ただし、同じ関数を呼び出しているので、無限ループに注意してください。メソッドのjQueryソースを調べて、ajax()
それらがコールバックをどのように処理するかを確認し、同様の方法でメソッドを作成すると、次のようになる可能性があります。
main() {
func(param1, {success: func(param2)});
}
(注:falseに設定できる設定がありますが、IMOでは、AJAXとコールバックがどのように機能するかをよく理解することをお勧めします。これは、意図した動作に逆らうのではなく、意図した動作で作業するためです$.ajax()
。async
これにより、長期的には頭痛の種を減らすことができます。さらに、大規模な同期AJAX呼び出しにより、サイトが応答しなくなる可能性があり、ユーザーエクスペリエンスに悪影響を及ぼします。)