【问题标题】:Using Ajax to load and display external pages content every x minutes使用 Ajax 每 x 分钟加载和显示外部页面内容
【发布时间】:2014-04-16 14:56:13
【问题描述】:

我有一个 php 页面,我想使用 ajax 或 jquery 加载一个 php 页面,该页面每 x 分钟位于同一文件目录中。我想每 x 分钟加载一次的外部 php 页面包含查询 mysql 数据库以查找新数据行的 php 代码,如果找到,则会弹出一个带有表单的 jquery 模块窗口。我的问题是我似乎找到的所有相同代码都需要我在父页面中设置一个 div 并希望将该内容加载到该 div 中。但是,如果我解释它的方式有意义的话,我想在整个页面的顶部显示外部 php 页面。

我正在尝试使用但不起作用的代码是

setInterval(
  $.get( "checkapiinsert.php", function( data ) {
     $( "body" )
  },10000);

【问题讨论】:

  • 基本上我有一个包含 php 和 jquery 的文件,我想每隔 x 分钟重新加载一次并显示其结果,就好像它是用户当前正在使用的屏幕/文件的一部分。
  • 谢谢,但这向我展示了一个看起来类似于我上面的代码。那么我将如何获得与您发布的实际工作的 url 相似的上述代码。我得到了我被告知显示工作的代码,它现在正在工作,所以我来到这个网站寻求帮助来修复我的代码,因为它看起来正确但它不起作用。我相信它的 $("body") 部分是不正确的关于如何纠正它的任何建议。同样,我想从外部页面编写代码以不加载到特定的 div 中。

标签: php jquery ajax


【解决方案1】:

您的代码非常接近。

setInterval(function(){
    $.get('checkapiinsert.php', function( data ) { 
       $('body').html(data);
    });
}, 5 * 1000 * 60); 

5 * 1000 (milliseconds) * 60 (seconds) = 5 分钟

虽然更好的解决方案是:

<meta http-equiv="refresh" content="300;url=/checkapiinsert.php">

假设checkapiinsert.php 在您的根目录下。

300 = 5 分钟

【讨论】:

    【解决方案2】:

    如果你想每 10000 毫秒刷新一次整个页面,为什么不使用元标记或使用 javascript 进行刷新

    <meta http-equiv="refresh" content="10">
    

    或者使用javascript

     setInterval(function(){location.reload(); },10000);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-06-01
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 2011-12-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多