Bootstrap5 Modal Uncaught TypeError: 'querySelector' called on an object that does not implement interface Element
Bootstrap5 Modal Uncaught TypeError: 'querySelector' called on an object that does not implement interface Element
我想像在文档中那样使用模式,我以这种方式尝试
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
Launch static backdrop modal
</button>
<!-- Modal -->
<div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
单击按钮时出现此错误“未捕获类型错误:'querySelector' 调用了一个未实现接口元素的对象”
我做错了什么?
删除按钮的“data-bs-target="#staticBackdrop
”部分解决了问题。我不知道它是什么或为什么会出现,但现在它对我有用。
data-bs-target
和模态框的 id
应该相同,将 data-bs-target
值更改为 #exampleModal
应该可以解决您的问题。
我删除了“data-bs-target”并为我工作,我的代码
按钮,你必须给它分配一个id:
<!-- Button trigger modal -->
<button id="test" type="button" class="btn btn-primary">
Launch demo modal
</button>
模态:
<!-- Modal -->
<div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
Javascript:
var myModal = new bootstrap.Modal(document.getElementById("test"));
myModal.toggle();
当我将 data-bs-target
设置为正确的模态 ID 时,我在 Bootstrap 5 中遇到此错误,但模态本身的格式不正确。 modal
父 class 必须至少包含一个 modal-dialog
子元素才能正常工作。
我想像在文档中那样使用模式,我以这种方式尝试
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#staticBackdrop">
Launch static backdrop modal
</button>
<!-- Modal -->
<div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
单击按钮时出现此错误“未捕获类型错误:'querySelector' 调用了一个未实现接口元素的对象”
我做错了什么?
删除按钮的“data-bs-target="#staticBackdrop
”部分解决了问题。我不知道它是什么或为什么会出现,但现在它对我有用。
data-bs-target
和模态框的 id
应该相同,将 data-bs-target
值更改为 #exampleModal
应该可以解决您的问题。
我删除了“data-bs-target”并为我工作,我的代码
按钮,你必须给它分配一个id:
<!-- Button trigger modal -->
<button id="test" type="button" class="btn btn-primary">
Launch demo modal
</button>
模态:
<!-- Modal -->
<div class="modal fade" id="exampleModal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
Javascript:
var myModal = new bootstrap.Modal(document.getElementById("test"));
myModal.toggle();
当我将 data-bs-target
设置为正确的模态 ID 时,我在 Bootstrap 5 中遇到此错误,但模态本身的格式不正确。 modal
父 class 必须至少包含一个 modal-dialog
子元素才能正常工作。