You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何让AJAX查询在页面加载时立即执行,之后每3秒循环刷新?

解决方案

这个问题很好解决!你只需要把重复执行的AJAX逻辑抽成一个独立函数,然后在页面加载时先手动调用一次,再启动定时器就可以实现页面打开立即查询,之后每3秒自动刷新的效果。

修改后的代码示例:

// 把查询逻辑封装成独立函数
function updateCurrencyValue() {
  $.ajax({ url:"query.php?currency=<?=$currencycode;?>" })
    .done(function(data) {
      $("#value").attr("value", data).attr("size", data.length - 2);
    });
}

// 页面加载时立即执行一次,避免等待3秒
updateCurrencyValue();

// 之后每3秒自动执行一次
setInterval(updateCurrencyValue, 3000);

原理说明:

  • 原来的代码只有setInterval内的逻辑,所以第一次执行会在3秒后触发。
  • 现在我们把AJAX请求封装成函数,先主动调用一次updateCurrencyValue(),这样页面一打开就会立刻发起查询并更新输入框的值。
  • 后续依然通过setInterval每3秒调用这个函数,保持自动刷新的功能。

内容的提问来源于stack exchange,提问作者user6651317

火山引擎 最新活动