【问题标题】:Add Bootstrap Modal using JavaScript and Cloned Node使用 JavaScript 和克隆节点添加引导模式
【发布时间】:2017-08-10 19:08:57
【问题描述】:

我试图在页面加载后通过按钮单击向页面添加模式(在下面我是在文档准备好而不是单击时完成的)。模态是通过克隆另一个模态然后将克隆附加到 DOM 来创建的。模态节点出现在 DOM 中,但在给出 .modal() 命令时,模态节点不会打开。我创建了一个简单的 codepen,它显示了我的代码并将在下面显示。

Codepen:https://codepen.io/anon/pen/YxQrZG

HTML:

<div id="LocalModalArea">
    <div class="modal fade" id="exampleModel" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                  <div id="myModalLabel" class="sideLineHeader">
                    <h2><span>Modal Header</span></h2>  
                  </div>
                </div>
                <div class="modal-body">
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
                </div>
            </div>
        </div>
    </div>
</div>

JS:

 $("Document").ready(function () {
   var newModal = $("#exampleModel").clone(true, true);
   newModal.attr("id", "NewModelId")
   $('#LocalModalArea').append(newModal)
   $("#NewModelId").modal("show")
 });

【问题讨论】:

  • 在您的代码笔上,您没有添加引导程序所需的jQuery,如果添加了jQuery,它似乎正在工作jsbin.com/pamiqac/edit?html,js,output
  • 在我的 Code-pen 示例中,调整我的引导程序和 jquery 脚本的顺序解决了这个问题。在我的实际项目中,我调整了调用脚本的位置并解决了我的问题。 @azs06 如果您回答建议更改我的脚本的发布顺序,我会将其作为答案进行检查。
  • @azs06 如果您回答建议更改我的脚本的发布顺序,我会检查它作为答案。

标签: javascript jquery twitter-bootstrap-3 bootstrap-modal


【解决方案1】:

在您的 codepen 上,您尚未添加引导程序所需的 jQuery

 $("Document").ready(function () {
   var newModal = $("#exampleModel").clone(false, true);
   newModal.attr("id", "NewModelId")
   $('#LocalModalArea').append(newModal);
   $("#NewModelId").addClass('super-red');
   $("#NewModelId").modal("show")
 });  
.super-red{
	background-color: darkred;
}
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
<div id="LocalModalArea">
    <div class="modal fade" id="exampleModel" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                  <div id="myModalLabel" class="sideLineHeader">
                    <h2><span>Modal Header</span></h2>  
                  </div>
                </div>
                <div class="modal-body">
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
                </div>
            </div>
        </div>
    </div>
</div>	
<script src="https://code.jquery.com/jquery.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

</body>
</html>

注意,我添加了额外的 CSS 来突出显示克隆的元素。

【讨论】:

    猜你喜欢
    • 2021-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-14
    • 2015-12-18
    • 2016-12-17
    • 1970-01-01
    相关资源
    最近更新 更多