jquery - 调用多次调用 API 的函数
问题描述
我正在尝试复制一个网页包含多个区域的场景,每个区域都由 API 调用更新并每 X 秒刷新一次。
window.setInterval(function() {
console.log("interval start");
getData;
console.log("interval end");
}, 5000);
//for (i = 1; i <= 3; i++) {
// console.log(i);
// setTimeout(getData, 5000);
//}
function getData(url, id) {
console.log("getData start");
$.get(url, function(data) {
console.log('data=' + data);
$(id).html(data);
});
};
getData('@Url.Action("GetTemperature", "SomeData")', '#temp');
getData('@Url.Action("GetStockPrice", "SomeData")', '#stock');
getData('@Url.Action("GetStateName", "SomeData")', '#state');
getData('@Url.Action("GetARandomDate", "SomeData")', '#myDate');
以下是日志:
- 获取数据开始
- AjaxTimer:95 getData 开始
- AjaxTimer:95 getData 开始
- AjaxTimer:95 getData 开始
- AjaxTimer:98 数据=188
- AjaxTimer:98 数据=佛蒙特州
- AjaxTimer:98 数据=88
- AjaxTimer:98 数据=2014-08-26T00:00:00
- AjaxTimer:83 间隔开始
- AjaxTimer:85 间隔结束
- AjaxTimer:83 间隔开始
- AjaxTimer:85 间隔结束
- AjaxTimer:83 间隔开始
- AjaxTimer:85 间隔结束
getData
不调用第二次。我不确定我要去哪里错了。
解决方案
你setInterval
的是这样的:
window.setInterval(function () {
console.log("interval start"); // Log to console
getData; // A variable
console.log("interval end"); // Log to console
}, 5000);
JavaScript 中的所有函数调用都必须以 结尾()
,因此只需将中间行更新为
getData();
并且 getData 将被间隔调用。
推荐阅读
- java - 使用上传会话使用 microsoft graph API 上传大文件 word 文档
- etl - 从 Snowflake 中的表流中手动刷新数据
- python - 在python中解包大列表
- php - 如何更改 WooCommerce 结帐文本?
- node.js - Shopify Storefront 上的嵌入式自定义 NextJS 应用程序更改资产文件路径
- python - 尝试使用 camelot-py 绘制 pdf 表格,但没有表格出现
- gke-networking - GKE Windows 节点,健康检查
- c# - NServiceBus 7 并发疑惑
- python-3.x - 优化 FOR LOOP 或替代它
- amazon-web-services - 通过 cloudformation 在任意可用区配置 EC2 实例