【发布时间】:2019-03-13 12:57:38
【问题描述】:
我正在从本地 API 返回一个 Json 对象,它工作正常,我为表格提供行和列的对象,每列都有一个搜索按钮,它应该打开一个包含有关该行的更详细信息的模式,已经加载了表格。
这是我的按钮示例:
<tr>
...
<td><button type="button" class="btn btn-primary form-control"
id="id5bb3b60d870f3809e8e4403d" data-toggle="modal"
data-target="#5bb3b60d870f3809e8e4403dmodal">+</button></td>
</tr>
这是一个模态示例:
<div id="5bb3b60d870f3809e8e4403dmodal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="5bb3b60d870f3809e8e4403dLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="5bb3b60d870f3809e8e4403dLabel">whatever</h5>
</div>
<div class="modal-body"></div>
<div class="modal-footer"></div>
</div>
</div>
</div>
如您所见,我的数据目标和 div id 匹配,我还尝试删除 aria-labelledby 和 aria-hidden,如果我使用浏览器检查器,我可以看到模式已经加载。我还可以使用我的模态 ID 成功使用 getElementById。 很抱歉,这是一个菜鸟错误,但我已经浪费了一整天的时间来解决它。我没有得到任何异常,也没有错误,也没有任何模态视图。
【问题讨论】:
-
您能否发布一个完整的示例来重现该问题?
-
确保你有一个模态所需的所有嵌套 div,例如。
modal-dialog、modal-content等。之后,确保没有两个 div 具有相同的 id(这肯定会导致模态不显示) -
这是因为您的表格内容是动态加载的。当您有按钮
click事件的侦听器但按钮是动态加载和构建时,同样的问题。click事件不起作用,您必须改用$.on('click')。
标签: html bootstrap-4