网页无闪自动局部刷新实例_JSP教程
推荐:实现将子页的表单值返回到父页的表单中研究了一天终于写好了,还是网络资源丰富,总有高人指点!:) 父页:send_message.jsp script language=javascript type= //open win function g_OpenWindow(pageURL, innerWidth, innerHeight) { var ScreenWidth=screen.availWidth var ScreenHeight=sc
我们在网页制作的过程中经常会遇到及时刷新数据的问题,如果使用<meta http-equiv=refresh content="300">的方法,会造成整个屏幕不断闪烁刷新的效果,这会降低用户的操作满意度。所以我们需要一种可以实现无闪自动刷新数据的方法来解决以上问题。
实例解决问题:
希望实现用户在进入系统以后(整个session的时效之内),如果收到新邮件则发出声音提示。
实现思路:
1.首页部分:<body onload="init('<%=ses_userBean.getUsername()%>');"> // load时调用init(user);
2.js部分:用XMLHTTP实现页面局部刷新,调用check_mail.jsp对后台数据库进行检索判断并返回结果。
- <!--
- var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
- var checkresult=null;
- var username =null;
- function init(user){
- username=user;
- window.setInterval('Checkmail()',5000);//每隔5秒自动调用Checkmail()
- }
- function Checkmail()
- {
- xmlhttp.open("POST", "check_mail.jsp?uName="+username, false);
- xmlhttp.onreadystatechange = updatePage;
- xmlhttp.send();
- }
- function updatePage() {
- if (xmlhttp.readyState < 4) {
- test1.innerHTML="loading...";
- }
- if (xmlhttp.readyState == 4) {
- var response = xmlhttp.responseText;
- if(response==1){//判断为假
- test1.innerHTML=" ";
- checkresult=1;
- }
- else{//判断为真
- test1.innerHTML="<img alt='新邮件' src='img/tp024.gif'><EMBED src='music/nudge.wma' hidden=true autostart=true loop=false>";
- checkresult=0;
- }
- }
- }
- // -->
3.check_mail.jsp
- <%@ page contentType="text/html; charset=GBK" %>
- <%@ page errorPage="error/login_error.jsp"%>
- <%@ page import="myweb.*" %>
- <%@ page import="java.sql.*" %>
- <%
- String user=request.getParameter("uName");
- Connection conn=null;
- try{
- conn=DBConnection.getConnection();
- PreparedStatement pStat=conn.prepareStatement("select * from message where r_name='"+user+"' and status=0");
- ResultSet rs=pStat.executeQuery();
- if(rs.next()){//有记录
- response.getWriter().print(0);
- }else{
- response.getWriter().print(1);
- }
- }finally{
- if(conn!=null) conn.close();
- }
- %>
4.首页结果显示
将<span id="test1"></span>插入指定位置。
分享:JSP保存用户上次登录时间详细代码代码是以Access库为例,日期对象使用的java.sql.Date()类型,因为据测试java.util.Date类型是不能添加到DateTime类型的字段中的:作者:淘特网 出处:http://www.tot.name import java.sql.*; import java.text.*; /** * 代码 */ public class MSAccessDB { p
- jsp response.sendRedirect不跳转的原因分析及解决
- JSP指令元素(page指令/include指令/taglib指令)复习整理
- JSP脚本元素和注释复习总结示例
- JSP FusionCharts Free显示图表 具体实现
- 网页模板:关于jsp页面使用jstl的异常分析
- JSP页面中文传递参数使用escape编码
- 基于jsp:included的使用与jsp:param乱码的解决方法
- Java Web项目中连接Access数据库的配置方法
- JDBC连接Access数据库的几种方式介绍
- 网站图片路径的问题:绝对路径/虚拟路径
- (jsp/html)网页上嵌入播放器(常用播放器代码整理)
- jsp下显示中文文件名及绝对路径下的图片解决方法
- 相关链接:
- 教程说明:
JSP教程-网页无闪自动局部刷新实例。