提交后关闭bootstrap模式

时间:2015-04-20 17:49:04

标签: jquery ajax twitter-bootstrap

单击Delete按钮后,如何关闭引导模式?这是我的代码:

<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">&times;</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");
    }
  });
});

6 个答案:

答案 0 :(得分:2)

无需使用javascript隐藏模型,您只需使用data-dismiss =&#34; modal&#34;按钮标签属性如下。

<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>

答案 1 :(得分:0)

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

答案 2 :(得分:0)

我遇到了同样的问题。提交后我试图关闭一个模态窗口。我能解决它的唯一方法就是做到以下几点。

在success函数中,我通过jQuery添加了这段代码:

success: function(respuesta){
    $('#btnGuardarCambios').attr("data-dismiss", "modal");

在“保存更改”按钮上,我使用了attr方法。如果ajax成功,我只需添加一个新属性(data-dismiss)并设置它的值(模态),否则模态不会消失。

编辑:这不适用于IE和Chrome,仅适用于Mozilla:c

答案 3 :(得分:0)

在你的身体结束之前尝试<script>来写这个

$('#media_delete_confirmation').submit(function() {
        $('#media_delete_confirmation').modal('hide');
        });

答案 4 :(得分:0)

首先在此提交按钮中添加id或类,如closemodel。然后添加另一个ID 或者在第一个div中的类。然后添加此jquery代码

<script>
$(document).ready(function() {
  $('#closemodel').click(function() {
    $('#CreateAccount1').modal('toggle');
  });
});
</script>

答案 5 :(得分:0)

您只需在提交时隐藏模式 $('#media_delete_confirmation')。modal('hide'); //隐藏模态