<div id='here'></div>
我正在尝试刷新一堆div 中的某个div。div内容基本上是由PHP与MySQL数据库的数据一起生成的,此外还有许多变量是在XMLHttpRequest的帮助下发送的。
这个想法是重新加载/刷新div 本身,而不是加载 php 文件或用 .text
或 .html
覆盖它。在这种情况下,我无法使用.load('file.php')
我试过什么:
<script type='text/javascript'>
function updateDiv()
{
document.getElementById("here").innerHTML = document.getElementById("here").innerHTML ;
}
</script>
和(每 3 秒刷新一次(:
$(document).ready(function () {
setInterval(function () {
$('#here').load('#here'));
}, 3000);
});
理想情况下,我需要这样的东西:
function reloadDIV () {document.getElementById("here").innerHTML.reload}
function reloadDIV () {$('#here').load(self)}
这样我就可以在点击中使用它:
<a onclick='reloadDIV ();'>reload div</a>
要重新加载页面的一部分,您可以使用带有当前 url 的 jquerys load
并指定所需的片段,该片段与调用 load
的元素相同,在本例中#here
:
function updateDiv()
{
$( "#here" ).load(window.location.href + " #here" );
}
- 不要忽略加载元素选择器中的空间:
+ " #here"
此函数可以在间隔内调用,也可以附加到单击事件
对于div 刷新而不在具有相同 id 的div 中创建div,您应该在函数中使用它
$("#yourDiv").load(" #yourDiv > *");
完整的工作代码如下所示:
<script>
$(document).ready(function(){
setInterval(function(){
$("#here").load(window.location.href + " #here" );
}, 3000);
});
</script>
<div id="here">dynamic content ?</div>
自装div 容器每 3 秒刷新一次。
您可以
执行以下操作来重新加载<div>
元素:
$('#yourDiv').load('#yourDiv > *')
确保:使用id
而不是class
。另外,请记住粘贴: <script src="https://code.jquery.com/jquery-3.5.1.js"></script>
HTML 文件的<head>
部分中(如果尚未(。在相反的情况下,它不起作用。
您可以使用 jQuery 通过简单的 $.get
方法来实现此目的。 .html
像innerHtml一样工作,并替换div的内容。
$.get("/YourUrl", {},
function (returnedHtml) {
$("#here").html(returnedHtml);
});
并使用javascript setInterval
方法调用它。