javascript - 在不重新加载整个页面的情况下重新加载 DIV

标签 javascript php jquery html ajax

我有一个包含 php 的 Div 标签,用于用信息填充该 div 我想要做的是让页面每 15 秒调用一次,这样它就可以更新那里的信息,而不必重新加载整个网页。 我已尝试使用 JavaScript/jQuery 执行此操作,但我似乎无法让它工作

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript">
var auto_refresh = setInterval(
function ()
{
$('.View').load('Small.php').fadeIn("slow");
}, 15000); // refresh every 15000 milliseconds
</script>

<div class="View"><?php include 'Small.php'; ?></div>

这是我在搜索一些之后得到的,发生的是,它加载了 Small.php,但它不会刷新它或每 15 秒更新一次信息。

请帮忙!

我应该添加我应该显示的所有 php 数组都在 Small.php 中执行,我将其包含到的页面只是为了隔离。

编辑:没有人注意到我的第一个引用 jQuery 的脚本没有结束标记,这破坏了我的第二个脚本。添加适当的结束标记后,脚本终于可以运行了,但是如果不先使用淡出,则淡入无法正确显示。

最佳答案

您的代码有效,但 fadeIn 无效,因为它已经可见。我想你要达到的效果是:fadeOutloadfadeIn:

var auto_refresh = setInterval(function () {
    $('.View').fadeOut('slow', function() {
        $(this).load('/echo/json/', function() {
            $(this).fadeIn('slow');
        });
    });
}, 15000); // refresh every 15000 milliseconds

在这里试试:http://jsfiddle.net/kelunik/3qfNn/1/

附加说明:正如 Khanh TO 所提到的,您可能需要清除浏览器的内部缓存。他提到,您可以使用 $.ajax$.ajaxSetup ({ cache: false }); 或随机黑客来做到这一点。

关于javascript - 在不重新加载整个页面的情况下重新加载 DIV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18799579/

相关文章:

php - Laravel 7:MariaDB与Redis结合使用,但是Redis在大型对象上的运行速度较慢

javascript - 如何向 jQuery 对象中的元素添加类?

JavaScript 获取前一天晚上 11 点的日期字符串

PHP - 比较两个 MySQL 表的连接/馈送

javascript - 捕获父元素上的事件

php - 在 codeigniter 中一次制作 2 个缩略图

javascript - 在 D3.js 中添加带有嵌套条目的属性

javascript - 页面重新加载后保持事件选项卡时加载ajax内容(Bootstrap 4)

c# - 通过辅助方法动态调用 Html.ValidationSummary() 时出现 KeyNotFound 异常

javascript - 用SVG画圆