如何在关闭时将引导模式重置为其原始内容?

时间:2016-01-06 04:39:47

标签: javascript jquery twitter-bootstrap bootstrap-modal

P.S我在javascript方面不是很好,我知道这个问题已被问到,但解决方案不适用于我的问题,所以我会再次提出这个问题。

我遇到了这个问题,还没有找到解决方案。我希望在结束后清除发生在模态中的所有事情。

我的模态是表单模式,因此每当我单击提交时,将在 c7 c8.1 c3 c1 c5 c10 c8 c6 c2 c3.1 c9 c4 r1 2 2 1 2 1 1 2 1 1 1 2 NA r2 3 1 3 1 3 NA 1 3 1 3 2 2 r3 2 NA 2 3 1 NA 3 1 2 2 1 NA r4 2 NA 1 2 NA 1 1 2 3 NA NA 2 r5 NA 3 2 1 3 2 3 3 NA 2 NA 3 r6 2 NA 2 2 1 1 1 1 2 2 1 NA r7 2 2 2 2 1 3 2 NA 1 2 2 2 r8 NA NA 1 3 NA NA 1 2 1 NA NA 1 r9 1 3 3 2 1 2 3 NA 1 NA NA 2 r10 NA NA 1 NA NA 1 1 1 1 1 2 3 上使用ajax显示codeigniter验证消息。现在每当我关闭模态时,验证消息都会在我重新打开时保留。关闭模态后应该怎么做以清除它们?

这是ajax调用的函数:

<div style="font-size:10px;width:50%;" id="info"></div>

这是由提交调用的ajax:

public function addcomp () {
  $this->load->library('form_validation');
  $this->load->helper('security');
  $this->form_validation->set_rules('comp_name','Computer Name','trim|required|callback_pc_exist');
  $this->form_validation->set_rules('status','Status','trim|required');
  $this->form_validation->set_rules('location','Location','trim|required');

  if ($this->form_validation->run()) {

    $this->load->model('asset_model');
    $result=$this->asset_model->addpc();

    if (!$result) {
      echo mysqli_error($result);
    } else {
      echo "<div class='alert alert-success alert-dismissable'>
      <button type='button' class='close' data-dismiss='alert' aria-hidden='true'>×</button>
      Computer Successfully Added!</div>";
    }
  }
  echo validation_errors("<div class='alert alert-danger alert-dismissable'><button type='button' class='close' data-dismiss='alert' aria-hidden='true'>×</button>","</div>");
}

1 个答案:

答案 0 :(得分:4)

您可以使用Bootstrap's Modal Events。你应该关注这两个:

  
      
  • hide.bs.modal调用hide实例方法后立即触发此事件。
  •   
  • hidden.bs.modal当模态完成对用户的隐藏时将触发此事件(将等待CSS过渡完成)。
  •   

所以,你可以这样做:

$(function () {
  // Delegating to `document` just in case.
  $(document).on("hidden.bs.modal", "#myModalID", function () {
    $(this).find("#info").html(""); // Just clear the contents.
    $(this).find("#info").remove(); // Remove from DOM.
  });
});

<强>更新

看到你的代码,你可能需要使用它:

$(function () {
  // Delegating to `document` just in case.
  $(document).on("hidden.bs.modal", "#myModalID", function () {
    $(this).find(".alert-danger").remove(); // Remove from DOM.
  });
});