本人前幾天做了一個功能,就是實時刷新日誌,便於跟蹤錯誤信息,要求每秒刷新一次,通過按鈕可以暫停刷新和開始刷新
jsp:
<input type="button" οnclick="start()" value="開始刷新" style="width: 80px; height:25px;" >
<input type="button" οnclick="stop()" value="停止刷新" style="width: 80px; height:25px;">
js:
<script type="text/javascript">
var isHold = false; //false表示恢復 true表示暫停
function showLogs()
{
if(isHold)
{
return;
}
$("#table2").empty(); //清空原來的數據
$.ajax({
type:"post",
url:"<%=request.getContextPath()%>/logs/queryLogsInfo.action",
dataType:"json",
success:function(data)
{
for ( var i = 0; i < data.length; i++)
{
$("#table2").append("<tr style='line-height:25px;'>"
+"<td width='5%'>"+data[i].id+"</td>"
+"<td width='5%'>"+data[i].receive+"</td>"
+"<td width='8%'>"+data[i].data+"</td>"
+"<td width='10%'>"+data[i].dataLength+"</td>"
+"</tr>");
}
}
})
}
var t = setInterval("showLogs()", 1000);
function stop()
{
isHold = true;
clearInterval(t);
}
function start()
{
isHold = false;
setInterval("showLogs()", 1000);
}
</script>
補充:
setInterval() 方法可按照指定的週期(以毫秒計)來調用函數或計算表達式。
clearInterval() 方法可以取消該週期性的方法調用。
setTimeout()方法用於在指定的毫秒數後調用函數或計算表達式