打开bootstrap模式时,以前的数据有多清楚?

时间:2014-12-29 02:58:06

标签: javascript twitter-bootstrap

主页包含谷歌地图(div),从地图中选择状态后,我将尝试打开引导模态并在引导程序中加载选定的县地图。

首次点击德克萨斯州(javascript ShowModalDialog()调用)然后bootstrap模态警报显示Texas然后关闭。 第二次选择俄亥俄州,现在首先警告显示德克萨斯州和俄亥俄州

为什么以前的状态显示在这里?



<script type="text/javascript">
            function ShowModalDialog(stateid) {

                $('#myModal').modal('show').on('shown.bs.modal', function () {
                   
                  alert(stateid);
                  
                    $("#myModal #myModalLabel").html(document.getElementById("statename").value);
                    var datajson = GetCountyData(stateid);

                });


            }
        </script>
&#13;
<!-- Modal -->
        <div class="modal fade modal-wide" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
            <div class="modal-dialog" style="color: #808080">
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                        <h4 class="modal-title" id="myModalLabel">Modal title</h4>

                    </div>
                    <div class="modal-body">
                      ....
                      ....
                      ..
                      .
                      </div>
</div>
            </div>
        </div>                  
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

我认为这是bootstrap中的错误,因为我有几种方法来清除模态

$('body').on('hidden.bs.modal', '.modal', function () {
  $(this).removeData('bs.modal');
});

但stil没有完美的&#39; solutin,因为每次新的调用,屏幕上的模态稍微下降,比在firebug我看到有很多模态只是隐藏,比我发现

http://bootboxjs.com/

我的所有问题都解决了

  $("#myModal").on("hide", function() {    // remove the event listeners when the dialog is dismissed
        $("#myModal a.btn").off("click");
    });

    $("#myModal").on("hidden", function() {  // remove the actual elements from the DOM when fully hidden
        $("#myModal").remove();
    });

    $("#myModal").modal({                    // wire up the actual modal functionality and show the dialog
      "backdrop"  : "static",
      "keyboard"  : true,
      "show"      : true                     // ensure the modal is shown immediately
    });