定期更新只发生一次

时间:2017-02-16 23:45:29

标签: javascript jquery

我有这个jquery脚本

<script>
(function worker() {
  $.ajax({
    dataType: 'json',
    url: '/course.json',
    success: function(data) {
      $('#current').text(data);
    },
    complete: function() {
      // Schedule the next request when the current one's complete
      setTimeout(worker, 1000);
    }
  });
})();
</script>

这只能运作一次。一次更新后,即使ajax响应发生更改,#current的值也不会更改。

如果此问题与更改DOM属性有关,我不知道我在.delegate如何使用click等实际事件,如strng = 'This is me'; for (var charac of strng) { console.log(charac); } 等。

1 个答案:

答案 0 :(得分:1)

在成功回调中添加console.log(data);行,并检查数据是否真正发生了变化。同样转到F12网络选项卡,检查响应实际上是200而不是缓存(302等)。也许问题是缓存。您必须在文件中返回no-cache标头,或者添加随机get参数以使缓存无效。

另外,为什么不在成功回调中添加超时?有两个具有相同目的的回调是很奇怪的。只是为了确保调用回调。