私はそのような問題を抱えています:Bootstrap= modalsを使用して行われる認証があります。
ユーザーがモーダルサインインを開くと、モーダル(またはその他)にサインアップできます。だから、私は前のものを閉じる必要があります。
今、私は次のようにそれらを閉じています:
$(document).ready(function(){
$("a").click(function() {
$("#login").hide();
$("#sign_up").hide();
})
});
しかし、私がこれをしているとき-ページを更新するまで、サインインモーダル(サインインからサインアップをクリックした後)を再開できません。
別のリンクを呼び出したときに、リンクをクリックしているモーダルを確認して閉じる方法を誰かが提案できますか?以前のモーダルを閉じる普遍的な方法はありますか?
非表示Bootstrapモーダルを使用して:
_$('#modal').modal('hide');
_
$().hide()
と言うと、一致した要素は非表示になりますが、モーダル関連のコードに関する限り、まだそこにあります。 モーダルドキュメント のメソッドセクションを参照してください。
両方のモーダルを切り替えます
$('#modalOne').modal('toggle');
$('#modalTwo').modal('toggle');
私ができることは最高です
$(this).closest('.modal').modal('toggle');
これにより、イベントをトリガーしたDOMオブジェクトを保持するモーダルが取得されます(ボタンをクリックしていると推測します)。最も近い親「.modal」を取得して切り替えます。クリックしたモーダル内にあるため、明らかに機能します。
ただし、これを行うことができます。
$(".modal:visible").modal('toggle');
これは表示されているモーダルを取得し(一度に1つしか開くことができないため)、「トグル」をトリガーします。これは「:visible」なしでは機能しません。