1

この Bootstrap3 アコーディオンには連続したパネルがあります。それぞれに、それを閉じて次のステップを開くボタンがあります。

ただし、(特定の条件が満たされない場合)次のパネルは開かないはずです。他のことも起こるべきではありませんが、それらは一種の制御下にあります. ポイントは、(条件が満たされない場合)次のステップ パネルが開き、それを防ぎたいということです。

イベントリスナーに以下を追加しましたが、役に立ちませんでした。次のパネルが開かないようにするにはどうすればよいですか?

$('#my-panel').on('hidden.bs.collapse', function (aTicketPanelCollapsedEvent) {
    aTicketPanelCollapsedEvent.preventDefault(); 
    // I expected this to work but unfortunately it doesn't
    });
4

3 に答える 3

0

preventDefault() は、イベントに応答してブラウザーがデフォルト アクションを実行するのを防ぐだけだと思います。イベント「hidden.bs.collapse」はブラウザー イベントではないため、 preventDefault() は何もしません。

于 2013-08-30T11:20:16.187 に答える
0

show.bs.collapseまたはのいずれかを使用しようとしますhide.bs.collapsehidden.bs.collapseイベントがすでに発生した後に呼び出されるものを使用しています。

于 2013-08-30T11:22:38.640 に答える
0

代わりに「hide.bs.collapse」を処理する必要があると思います。「hidden」を使用する際の問題は、崩壊がすでに発生していることです。

$('#my-panel').on('hide.bs.collapse', function (e) {
    e.preventDefault(); 
});

デモ: http://bootply.com/78023

于 2013-08-30T11:22:50.047 に答える