0

嗨,我有这个示例代码来加载随机引号。

PHP代码:

<?php
  //Selecting Random quotes from database --randomquotes.php
  require('dbconnection.php');
  // $temp=10;
  $sql = "SELECT * FROM db.q order by rand() LIMIT 1";
  $res = mysql_query($sql,$con);
  while ($res1=mysql_fetch_assoc($res))
  { 
    print "<em>".$res1['quote']."</em>";
  }
?>

HTML 代码:

<div class="class_box_shadow_quote">
<?php
  require('randomquotes.php');
?>
</div>

jQuery代码:

<script>
  var $j = jQuery.noConflict();
  $j(document).ready(function(){
    setInterval(function() {
      $j(".class_box_shadow_quote").load('randomquotes.php');
    }, 7000);
  });
</script>

此代码第一次运行良好,但卡在第二个报价上并且没有更改报价。而且每次我看到第二个报价总是一样的。问题是什么 。请帮忙?

4

2 回答 2

2

我相信输出正在被 jQuery 缓存。您可以尝试禁用缓存。

setInterval(function() {
    $j.ajax({
        url: 'randomquotes.php',
        cache: false,
        success: function(data) {
            $j(".class_box_shadow_quote").html(data);
        }
    });
}, 7000);
于 2012-09-29T18:43:24.373 回答
0

尝试在 URL 末尾添加随机种子以避免浏览器缓存,如下所示:

    $(".class_box_shadow_quote").load('randomquotes.php?s=' + (Math.Random() * 1000000))
于 2012-09-29T18:48:55.830 回答