Delete
ボタンをクリックした後、bootstrap modalを閉じるにはどうすればよいですか?)これが私のコードです:
<div id="media_delete_confirmation" class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Confirmation</h4>
</div>
<form id="modal-form">
<div class="modal-body">
<input id="media_action" value="deleteMediaAction" type="hidden"/>
<p>Do you want to save changes you made to document before closing?</p>
<p class="text-warning"><small>If you don't save, your changes will be lost.</small></p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Keep</button>
<button type="button" class="btn btn-default" id="modal_delete">Delete</button>
</div>
</form>
</div>
</div>
</div>
そしてここに他の部分があります:
$("#modal_delete").click(function() {
var id = $(".image-picker").val();
var media_action = $("#media_action").val();
$.ajax({
type: 'POST',
url: '?page=myMediaController&action=deleteMedia',
data: {'media_id' : id},
success: function(data) {
$("#media_delete_confirmation").modal("hide");
}
});
});
私は同じ問題を抱えていて、モーダルダイアログをこのように閉じることができました:
<div id="approveDialog" class="modal approveDialog hide">
<!-- various form elements -->
<div class="modal-footer pull-center">
<a href="#" data-dismiss="modal" aria-hidden="true" class="btn">Back to Listings</a>
<button id="submitApprove" class="btn btn-success">Shop</button>
</div>
</div>
$('button#submitApprove').on("click", function(event) {
// submit form via ajax, then
event.preventDefault();
$('#approveDialog').modal( 'hide' );
});
JavaScriptを使用してモデルを非表示にする必要はありません。次のように、ボタンタグ属性でdata-dismiss = "modal"を使用するだけです。
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Keep</button>
<button type="button" class="btn btn-default" id="modal_delete" data-dismiss="modal">Delete</button>
</div>
<script>
これを書いているあなたの体の終わりの前に
$('#media_delete_confirmation').submit(function() {
$('#media_delete_confirmation').modal('hide');
});
最初に、この送信ボタンにclosemodelのようなIDまたはクラスを追加します。次に、この最初のdivに別のIDまたはクラスを追加します。次に、このjqueryコードを追加します
<script>
$(document).ready(function() {
$('#closemodel').click(function() {
$('#CreateAccount1').modal('toggle');
});
});
</script>
送信時にモーダルを非表示にすることができます
$('#media_delete_confirmation').hide(); //to hide modal
$('.modal-backdrop').remove(); //to remove backdrop
私は同じ問題を抱えていました。送信後にモーダルウィンドウを閉じようとしました。私がそれを解決できる唯一の方法は、次のことをすることでした。
成功関数では、jQueryを介してこのコードを追加しました。
success: function(respuesta){
$('#btnGuardarCambios').attr("data-dismiss", "modal");
「変更を保存」ボタンでは、attr
メソッドを使用しました。 ajaxが成功した場合は、新しい属性(data-dismiss
)とその値(モーダル)を設定しないと、モーダルは消えません。
編集:これはIEおよびChromeでは機能しません。Mozillaでのみ機能します:c
あなたが試すことができるV3
success: function(data) {
// close modal
$( '#media_delete_confirmation' ).modal( 'hide' ).data( 'bs.modal', null );
// event after hidden
$('#media_delete_confirmation').on('hidden', function(){
$(this).data('modal', null); // destroys modal
});
}
バージョン2
$( '#media_delete_confirmation' ).remove();
$( '.modal-backdrop' ).remove(); // removes the overlay