1、我們會用到:window.οnlοad=function(){} ,一個頁面貌似只能用一次,可以自己去試試:
2、html代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>數據交互</title>
<script src="__JS__/jquery.min.js"></script>
</head>
<body>
<table id='table-test'>
<tr>
<th>期數</th>
<th>code碼</th>
<th>和值</th>
</tr>
</table>
</body>
<script>
//假設每隔5秒發送一次請求
window.onload = function () {
getApi();
}
function getApi() {
//設置時間 5-秒 1000-毫秒 這里設置你自己想要的時間
setTimeout(getApi,5*1000);
$.ajax({
url: 'http://www.andy.com/xxx',
type: 'get',
dataType: 'json',
success: function (data) {
//方法中傳入的參數data為后台獲取的數據
// console.log(data.data);
var data1 = data['data']['history'];
// console.log(data1);
var tr;
$.each(data1,function (index,item) {
//字符串轉數組
var code = item['code'].split(',');
//數組轉字符串:
var strCode = code.join(' ');
// console.log(strCode)
tr = '<td>'+item['issue']+'</td>'+'<td>'+strCode+'</td>'+'<td>'+item['sum']+'</td>';
$('#table-test').append('<tr>'+tr+'</tr>')
})
}
})
}
</script>
</html>
3、效果圖:依次每隔5秒請求一次
圖一:注意看server_time
圖二:還是注意看server_time
兩次時間相減 = 5秒!也就是說5秒鍾請求了一次接口!
4、但是不做判斷的話,循環出來的值就跳入死循環了,之前這么寫是為了展示效果,下面才是如果接口發過來的code=2,才每隔5秒請求一次,直到請求到最新數據,code=1,才停止請求!修改一下方法,代碼如下:
function getApi() {
$.ajax({
url: 'http://www.andy.com/xxx',
type: 'get',
dataType: 'json',
success: function (data) {
//方法中傳入的參數data為后台獲取的數據
// console.log(data.msg);
if(data.code == 1){
var data1 = data['data']['history'];
// console.log(data1);
var tr;
$.each(data1,function (index,item) {
//字符串轉數組
var code = item['code'].split(',');
//數組轉字符串:
var strCode = code.join(' ');
// console.log(strCode)
tr = '<td>'+item['issue']+'</td>'+'<td>'+strCode+'</td>'+'<td>'+item['sum']+'</td>';
$('#table-test').append('<tr>'+tr+'</tr>');
})
}else {
//設置請求api接口時間
setTimeout(getApi,5*1000);
}
}
})
}
————————————————
版權聲明:本文為CSDN博主「IT-Andy」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_39188306/article/details/88600665