定时刷新页面SetInterval 和setTimeout -时间间隔可以动态设定
JS里设定延时:
使用SetInterval和设定延时函数setTimeout 很类似。setTimeout 运用在延迟一段时间,再进行某项操作。
setTimeout("function",time) 设置一个超时对象 setInterval("function",time) 设置一个超时对象
SetInterval为自动重复, setTimeout不会重复。
clearTimeout(对象) 清除已设置的setTimeout对象 clearInterval(对象) 清除已设置的setInterval对象
举例 1、:放到js代码中,页面加载完就设定了,时间到就刷新整个页面,缺点是无法动态更改刷新间隔。
function myrefresh() { window.location.reload(); }
setTimeout('myrefresh()',5000); //指定5秒刷新一次
方法二、 :<head><meta http-equiv="refresh" content="60"></head>
====为了实现可以更改动态修改刷新间隔【上面的方法是做不到的】
分析:因为本页面是用jsp 方式,没有用到异步刷新填充数据,目前很有局限性。
改造:方法1、不要刷新整个页面,定时触发ajax请求数据回来 动态创建表格填充数据;
方法2、用iframe的方式,弄成多页面的感觉,js 定时刷新 iframe里面的页面
方法3、还是采用目前方式,变通一下。动态参数通过请求地址参数 传递。js代码如下:

$(function() {
//先定义一个静态方法getUrlParam(拓展工具)的方式
(function($) {
$.getUrlParam = function(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null)
return unescape(r[2]);
return null;
}
})(jQuery);
var xx = $.getUrlParam('pn');//获取参数 大于0才设定,如果为0视为停止刷新
if (xx > 0) {
setTimeout('myrefresh1(' + xx + ')', xx);//设定本次定时间隔
}
});
function queryItems() {
document.itemsForm.action = "${pageContext.request.contextPath }/coins/list.action";
document.itemsForm.submit();
}
function myrefresh1(interval) {
// window.location.reload();改用下方方法
self.location = 'list?pn=' + interval;//将时间间隔作为请求参数,controller中并不使用它
}
var st;
function StartReflesh() {
var time = document.getElementById("selectTime").value;//js获取值
st = setInterval('myrefresh1(' + time + ')', time);//设定定时间隔,并把 间隔传参给地址
}
function EndReflesh() {
// clearInterval(st);
self.location = 'list?pn=0';//停止刷新时参数 pn是为0
}
其实不断刷新页面是很不好的,最好异步请求数据 填充。 后续改善,待更新.....
定时刷新页面SetInterval 和setTimeout -时间间隔可以动态设定的更多相关文章
- JS定时刷新页面及跳转页面
JS定时刷新页面及跳转页面 Javascript 返回上一页1. Javascript 返回上一页 history.go(-1), 返回两个页面: history.go(-2); 2. history ...
- JSP简单练习-定时刷新页面
<%@ page contentType="text/html; charset=gb2312" %> <%@ page import="java.ut ...
- Angular 定时器$timeout和$interval关于定时刷新页面和发送请求的用法
项目中有用到定时器定时刷新页面的数据,在网上查看了一些资料,整理了一下,备忘. $timeout 用法如下:$timeout(fn,[delay],[invokeApply]); fn:一个将被延迟执 ...
- 【jQuery】: 定时刷新页面
<%@page import="qflag.ucstar.seatmonitor.manager.SeatMonitorManager"%><%@ page la ...
- js定时刷新页面.
//页面定时刷新.2017.09.27 $(document).ready(function () { self.setInterval(function () { var d = new Date( ...
- JavaScript定时调用函数(SetInterval与setTimeout)
setTimeout和setInterval的语法同样.它们都有两个參数.一个是将要运行的代码字符串.另一个是以毫秒为单位的时间间隔,当过了那个时间段之后就将运行那段代码. 只是这两个函数还是有差别的 ...
- Vue使用定时器定时刷新页面
1. 需求说明 在前端开发中,往往会遇到页面需要实时刷新数据的情况,给用户最新的数据展示. 2. 逻辑分析 如果需要数据实时更新,我们自然是需要使用定时器,不断的调用接口数据,会相对的消耗内存. 3. ...
- http-equiv="Refresh" 实现定时刷新页面
***.html自动跳转文件代码如下: <HTML> <HEAD><META http-equiv="Refresh" content="5 ...
- php+ajax+jquery 定时刷新页面数据
testajax.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...
随机推荐
- Go语言(IDEA下+Eclipse下)Hello World
第一步,去下载Go环境 然后安装即可. IDEA 先安装GO插件: ..点击Browse... ..搜索GO ..点击安装,安装完之后重启 ..重启完之后,New~(IDEA已经自动识别出系统中安装的 ...
- awk统计文件大小
在Linux系统中,经常会遇到某个目录下文件很多,要统计这些文件的空间大小.可以采用awk来实现.如下是实现这个功能的例子. vim sum.sh #!/bin/bash# sum.shcd //ba ...
- CodeForces1051F LCA + Floyd
题意:给定一个10W的无向联通图,和10W的询问,每个询问求任意两点间的距离,限制条件是边数-点数不超过20 一般来说图上任意两点间的距离都会采用Floyd算法直接做,但是这个数据范围显然是不合理的, ...
- 2018acm-icpc青岛站后记
我要谢谢队友和出题人给了我这一个走出自闭的机会. 继上一个星期徐州因为1分钟的罚时痛失铜牌之后一度茶饭不思,深陷被铜牌支配的恐惧,孤注一掷将宝压到了下一站的青岛上. 幸好拿了银. 给浙大的出题人点赞, ...
- mysql在增加列前进行判断该列是否存在
通过存储过程判断字段是否存在,不存在则增加: DROP PROCEDURE IF EXISTS pro_AddColumn; CREATE PROCEDURE pro_AddColumn() BEGI ...
- Hadoop问题:There are 0 datanode(s) running and no node(s) are excluded in this operation.
问题描述: org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /tmp/hadoop-yarn/staging/hado ...
- ThreadPoolExecutor线程池详解
七个参数: corePoolSize:核心池的大小,在创建了线程池后,默认情况下,线程池中并没有任何线程,而是等待有任务到来才创建线程去执行任务,当有任务来之后,就会创建一个线程去执行任务,当线程池中 ...
- bzoj千题计划308:bzoj4589: Hard Nim(倍增FWT+生成函数)
https://www.lydsy.com/JudgeOnline/problem.php?id=4589 n*m*m 做法 dp[i][j] 前i堆石子,异或和为j的方案数 第一重循环可以矩阵快速幂 ...
- 归并排序_JAVA
import java.util.Arrays; public class Main { public static void main(String[] args) { int[] a = { 6, ...
- Noisy Channel模型纠正单词拼写错误
本文介绍 Stanford<From Languages to Information>课程中讲到的 单词拼写错误 纠正.背后的数学原理主要是贝叶斯公式.单词拼写错误纠正主要涉及到两个模型 ...