jquery - jquery LOAD 和 bootstrap 4 问题
问题描述
我正在尝试执行以下操作。
<button data-target="#myModal" data-toggle="modal" type="button" class="btn btn-primary">Details</button>
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<div class="bodyContent"></div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
</div>
</div>
$('#myModal').on('shown.bs.modal', function (e) {
$('.bodyContent').load('http://www.google.com');
})
但是,当我单击按钮并加载模型时,内容为空白。我不确定我在这里做错了什么?我已经尝试了很多不同的方法,但这应该是正确的。
解决方案
通常,当您调用 时.load()
,您需要一个回调函数来实际将内容放在那里。例如,下面的代码很适合您:
$('body').load(url, function(responseTxt, statusTxt, xhr){
$('.bodyContent').html(responseTxt);
});
此外,JQuery 的缩小版没有该.load()
功能。只有完整版才有。您应该只加载完整版本,而不是一次加载两个不同的版本!
更新:我有一个运行良好的 JSFiddle 片段。您应该Use POST method for /echo/html, see http://doc.jsfiddle.net/use/echo.html
在单击按钮时看到。不过,这仍然是一个合法的答案:)
您需要加载的唯一 JQuery 是最新版本。也不要买“苗条”的。缩小(“min”)很棒,这样做,但不要做苗条。下面的代码效果很好:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
推荐阅读
- python - Some strange questions about pytorch copy a tensor
- python - Python Tkinter在画布中混合收音机和默认用户输入框?
- c - 在 C 中声明数组时如何将其放在堆栈上?
- jenkins - Jenkins windows slave自动重连
- c# - dotnet restore 在 macos 上是否损坏?
- javascript - 悬空引用如何损害安全性?
- docker - dockerfile pip install -r requirements.txt 给出文件未找到错误
- sharedarraybuffer - 什么是顶级文件?(未定义 sharedArrayBuffer )
- java - 作为 CICD 管道的一部分,我如何执行功能测试
- javascript - 当组件未在其中呈现时,如何在空 div 中显示消息?