1

検索基準を含むアコーディオンのあるページがあります。人が検索ボタンをクリックすると、条件が閉じます (アコーディオンの見出しをクリックするようにシミュレートします)。これはうまくいきます。

問題は、ユーザーが無効な入力を提供し、AJAX 呼び出しが返され、アコーディオンが閉じ終わる前に検索条件を再度表示しようとした場合です (アコーディオンの見出しをシミュレートしてクリックします)。もちろん、これは検索基準を開くことができません。

これの簡単な例は、アコーディオンの見出しをダブルクリックすることです。このダブルクリック中にアコーディオンが遷移中の場合は何も起こりません。

私の状況でこれを回避するにはどうすればよいですか?注: IE はアコーディオンの開閉をアニメーション化しないため、IE よりも Chrome/FF で問題が多いようです。

#section1 がアコーディオンの見出しを表すコードの基本的な考え方:

$("#section1").click();
//some very fast AJAX.
$("#section1").click();

JS フィドル: http://jsfiddle.net/mikeyfreake/gGaJn/2/

ありがとう、マイク

4

2 に答える 2

1

async: falseAjax 呼び出しでパラメーターを使用します。これにより、2 回目のクリックの前に Ajax 呼び出しの実行が終了します。

http://api.jquery.com/jQuery.ajax/

successまたは、関数で 2 回目のクリックを実行できます。

$.ajax({
    success: function (data) {
        $("#section1").click();
    },
   ...
});
于 2013-06-17T16:21:55.690 に答える