需求:根据数据库情况,在页面定时弹出相应的消息

实现:

  1. 展示DIV设置

<script language="javascript" type="text/javascript" src="${ctx}/ui/js/jquery-1.3.2.js" > </script>
<style>
div{padding-right:5px;
padding-top:5px;
}
#note{position:absolute;width:300px;height:150px;padding:20px;background:#eee;border:1px solid #ccc;left:72%;z-index:9999;display:none;}
</style>
<link rel="stylesheet" href="${ctx}/sdc/ext/finance/finance/ui/home/themes/default/css/list.css" type="text/css">
<link rel="stylesheet" href="${ctx}/sdc/ext/finance/finance/ui/home/themes/default/css/template.css" type="text/css">
<div id="note" style="padding-left:5px;padding-right:5px;padding-top:5px;background:url(${ctx}/sdc/ext/finance/finance/ui/home/themes/default/img/tz.gif) repeat-x;">
<div style="height: 20px;">
<table width="98%" align="center" border="0">
<tr style="width: 100%">
<td align="left"><b>消息提醒</b></td>
<td align="right"><a onClick="closeMsg()">关闭</a><img id="closeBtn" src="${ctx}/sdc/ext/finance/finance/ui/home/themes/default/img/close.png" alt="关闭" onClick="closeMsg()" /></td>
</tr>
</table>
</div>
<div id="showInfo" style="width: 300px;height: 160px;">
</div>
</div>

  2. js调用ajax,确定页面是否弹出。

  2.1  使用window.setInterval(参数1,参数2),设置定时器,参数1为调用的方法,参数2为调用间隔时间,单位为毫秒

  2.2  window.clearInterval(interval);可以清除设置的定时器,interval为方法参数

var num = 10;
var showCount = 3;
var currCount = 0;
var lClientID = document.getElementById('agencyName').value;
var interval = window.setInterval(showMsgIcon, 1000*num);
function showMsgIcon(){
if(currCount-showCount==0){
window.clearInterval(interval);
}
if(!$('#note').is(':visible')){
$.ajax({
type: "POST",
url: "${ctx}/QueryTodoTaskServlet",
data: "agencyId="+lClientID+"&userId=<%=userInfo.getUserId()%>",
success: function(returnValue){ if(returnValue!="")
{
currCount ++;
//var msgPicFadeOutIn = setInterval(function(){
var divshow = $("#showInfo");
divshow.text("");// 清空数据
var currencyArray = returnValue.split("#");
for(var i=0;i<currencyArray.length-1;i++)
{
var currency = currencyArray[i].split(",");
var curName = currency[0];
var curCount = currency[1]; var urlEbank = "http://10.28.53.226:9085/ebankDraft/draft/query/transactionflowquery/transactionFlowQuery.jsp?funcid=000010000500003359370361203264&isOp=0&MGHessianURL=http://127.0.0.1:9085/toftmerge/MGHessianServlet&MGAppName=toftmerge&MGIntSysId=00000000000000000587557608475672&RLOGINPATH=ebank_session_outdate&UnitId=<%=unitId%>&SDCsessionId=<%=request.getSession().getId() + userInfo.getUuid()%>&module_id=359370361203264&lClientID="+lClientID;
if(i==0){
divshow.append(curName+'结算菜单<a onclick ="clickB()">'+curCount+'</a>条');
}else{
divshow.append("<br/>"+curName+'结算菜单<a onclick ="clickB()">'+curCount+'</a>条');
}
divshow.append("<br/>银企菜单<a onclick ='clickA()' >200</a>条"); // 添加Html内容,不能用Text 或 Val
divshow.append("<br/>电票菜单<a onclick='clickC()'>300</a>条");
divshow.append("<br/>纸票菜单<a onclick='clickD()'>400</a>条");
}
if(!$('#note').is(':visible')){
$('#note').css({display:'block', top:(sheight-50)}).animate({top: (sheight - 200)}, 500);
}
// }, 10000);
}else{
//sheight = $(window).height()
//$('#note').css({'top':(sheight - 210)});
}
}
});
} }
function clickB(){
selectModule1(1);
var main = document.getElementById('main');
main.src="http://<%=localHost1%>:<%=localPort1%>/NASApp/iTreasury-settlement/settlement/tran/current/view/v021.jsp";
// window.showModalDialog("http://10.28.53.226:9085/NASApp/iTreasury-settlement/settlement/tran/current/view/v021.jsp","", "dialogWidth=800px;dialogHeight=450px");
}
function clickA(){
//var tree = document.getElementById('tree');
//tree.src = "http://<%=localHost1%>:<%=localPort1%>/toftmerge/finance/getModule.do?currencyId=1&RLOGINPATH=finance_session_outdate&unitId=1&random=" + new Date().getTime();
selectModule1(12);
// flushMain();
// alert(1);
var main = document.getElementById('main');
main.src="http://<%=localHost1%>:<%=localPort1%>/NASApp/iTreasury-bankportal/bankinterface/view/v001.jsp?funcid=12000040000112&isOp=1&MGHessianURL=<%=MGHessianURL%>&MGAppName=toftmerge&MGIntSysId=1001&RLOGINPATH=finance_session_outdate&UnitId=<%=unitId%>&SDCsessionId=<%=request.getSession().getId() + userInfo.getUuid()%>&module_id=12";
// window.showModalDialog("http://10.28.53.226:9085/NASApp/iTreasury-bankportal/bankinterface/view/v001.jsp?funcid=12000040000112&isOp=1&MGHessianURL=http://127.0.0.1:9085/toftmerge/MGHessianServlet&MGAppName=toftmerge&MGIntSysId=1001&RLOGINPATH=finance_session_outdate&UnitId=<%=unitId%>&SDCsessionId=<%=request.getSession().getId() + userInfo.getUuid()%>&module_id=12","", "dialogWidth=800px;dialogHeight=450px");
}
function clickC(){
selectModule1(404291396468369);
var main = document.getElementById('main');
main.src="http://<%=localHost1%>:<%=localPort1%>/NASApp/DraftManage-finance/draftQuery/draftOperationProcessQuery/v001.jsp?funcid=000010000500004404291396468369&isOp=0&MGHessianURL=<%=MGHessianURL%>&MGAppName=toftmerge&MGIntSysId=00000000000000000404291396468383&RLOGINPATH=finance_session_outdate&UnitId=<%=unitId%>&SDCsessionId=<%=request.getSession().getId() + userInfo.getUuid()%>&module_id=404291396468369"; // window.showModalDialog("http://10.28.53.226:9085/NASApp/DraftManage-finance/draftQuery/draftOperationProcessQuery/v001.jsp?funcid=000010000500004404291396468369&isOp=0&MGHessianURL=http://127.0.0.1:9085/toftmerge/MGHessianServlet&MGAppName=toftmerge&MGIntSysId=00000000000000000404291396468383&RLOGINPATH=finance_session_outdate&UnitId=<%=unitId%>&SDCsessionId=<%=request.getSession().getId() + userInfo.getUuid()%>&module_id=404291396468369","", "dialogWidth=800px;dialogHeight=450px");
}
function clickD(){
selectModule1(898586663909326);
var main = document.getElementById('main');
main.src="http://<%=localHost1%>:<%=localPort1%>/financeDraft/draft/query/transactionflowquery/transactionFlowQuery.jsp?funcid=000010000600004898586663909326&isOp=0&MGHessianURL=<%=MGHessianURL%>&MGAppName=toftmerge&MGIntSysId=00000000000000000898586663909324&RLOGINPATH=finance_session_outdate&UnitId=<%=unitId%>&SDCsessionId=<%=request.getSession().getId() + userInfo.getUuid()%>&module_id=898586663909326"; // window.showModalDialog("http://10.28.53.226:9085/financeDraft/draft/query/transactionflowquery/transactionFlowQuery.jsp?funcid=000010000600004898586663909326&isOp=0&MGHessianURL=http://127.0.0.1:9085/toftmerge/MGHessianServlet&MGAppName=toftmerge&MGIntSysId=00000000000000000898586663909324&RLOGINPATH=finance_session_outdate&UnitId=<%=unitId%>&SDCsessionId=<%=request.getSession().getId() + userInfo.getUuid()%>&module_id=898586663909326","", "dialogWidth=800px;dialogHeight=450px");
}
function out(){
$('#note').animate({top:(sheight-50)}, 500, function(){
$(this).css({display:'none', top:'-100px'});
});
}

后台:

servlet

package com.iss.sdc.ext.finance.finance.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.iss.sdc.ext.finance.finance.util.TodoTaskUtils;
import com.toft.core2.ToftException; public class QueryTodoTaskServlet extends HttpServlet{ protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
{
doPost(req, resp);
} protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
try {
String temp = "";
String agencyId = "";
String userId = "";
String returnValue = "";
String currencyId = "";
String name = "";
temp = req.getParameter("agencyId");
if ((temp != null) && (temp.trim().length() > 0))
{
agencyId = temp;
}
temp = req.getParameter("userId");
if ((temp != null) && (temp.trim().length() > 0))
{
userId = temp;
} TodoTaskUtils todoTaskUtils = new TodoTaskUtils();
Map map = new HashMap();
List list = todoTaskUtils.queryTodoTaskList(userId, agencyId);
Iterator it = list.iterator();
while (it.hasNext())
{
map = (HashMap)it.next();
currencyId = (String)map.get("COUNT");
name = (String)map.get("NAME");
returnValue = returnValue + name + "," + currencyId + "#";
}
System.out.println("returnValue========"+returnValue);
resp.setContentType("text/html;charset=UTF-8");
resp.setHeader("Cache-Control", "no-cache");
PrintWriter out = resp.getWriter();
out.print(returnValue);
out.flush();
out.close();
}catch (ToftException e) {
e.printStackTrace();
}
}
}

web.xml

        <servlet>
<servlet-name>QueryTodoTaskServlet</servlet-name>
<servlet-class>com.iss.sdc.ext.finance.finance.servlet.QueryTodoTaskServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>QueryTodoTaskServlet</servlet-name>
<url-pattern>/QueryTodoTaskServlet</url-pattern>
</servlet-mapping>

jsp页面访问数据库根据数据情况,定时弹出提醒的更多相关文章

  1. jsp页面显示数据库的数据信息表

    在日常jsp开发中:最基本的一个操作之一是把之前添加到数据库中的信息在jsp页面中显示出来,也就是增删改查中的查找的一部分: 下面是以上部分的开发步骤及分析. 1.在jsp页面: <thead& ...

  2. jsp页面不乱码,外部引用的js弹出对话框乱码

    今天在做一个课程设计的时候,写到一个界面注册,在用js判断数据的正确性时,碰到了一个js弹出框的乱码问题.在网上找寻了很久,也找了很多博客看,但是发现怎么样都不能解决我的问题,下面给出几个比较经典的解 ...

  3. 360浏览器兼容模式下jsp页面访问不到js文件

    360浏览器兼容模式下jsp页面访问不到js文件 查看自己js中的语法问题,不要用ES6的语法,编译不了故找不到js文件 const var of 码出高效 java 比较 所有整型包装类对象之间值的 ...

  4. 自建目录中jsp页面访问servlet路径出错404

    ---恢复内容开始--- 自建目录中jsp页面访问servlet路径出错404 使用eclipse建立的项目,总是会遇到路径问题,比如jsp页面访问servlet,jsp在默认的路径.jsp在自建目录 ...

  5. JSP中访问数据库

    在JSP中访问数据库使用的是JSTL标签,本文不按照http://wiki.jikexueyuan.com/project/jsp/database-access.html此方法进行实践,而是采用之前 ...

  6. Spring Boot Web项目整合jsp页面访问

    这个内容就是实操过程中各种访问不了jsp页面,各种尝试后的解决方案吧.可能不是最优的,但是目前能解决项目中的一些问题.之前觉得没有什么问题直接可以操作的,没想到在这部分还是耗时了. 开发工具idea2 ...

  7. jQuery学习(二)——使用JQ完成页面定时弹出广告

    1.JQuery效果 2.步骤分析: 第一步:引入jQuery相关的文件 第二步:书写页面加载函数 第三步:在页面加载函数中,获取显示广告图片的元素. 第四步:设置定时操作(显示广告图片的函数) 第五 ...

  8. JavaScript学习——使用JS完成页面定时弹出广告

    1.获取图片的位置(document.getElementById(“”))  隐藏图片:display:none 定时操作:setInterval(“显示图片的函数”,3000); 2.步骤分析 ( ...

  9. 【JavaScript】案例三:使用JS完成页面定时弹出广告——事件(onload)

     事件(onload) *注意点: 变量加var局部变量,不加var全局变量 setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭. 返回值:返回 ...

  10. JS应用实例3:定时弹出广告

    在观看视频时候总会发现有广告弹出 这里就做一个类似这样的定时弹出广告的实例: 前面的JS代码和HTML写在同一个文件,实际开发中总是分开来写 用的时候引入即可 HTML代码: <!DOCTYPE ...

随机推荐

  1. idea汉化包安装失败解决方法

    idea安装中文插件时提示: Plugin "Chinese (Simplified) Language Pack / 中文语言包" was not installed: 查看自己 ...

  2. css移动端适配方法

    一:前端开发的常用单位 1.像素(px)     1.什么是像素(Pixel)?     在前端开发中视口的水平方向和垂直方向是由很多小方格组成的, 一个小方格就是一个像素     例如div尺寸是1 ...

  3. tomcat发布两个项目报错webAppKey重复设置

    两个项目的web.xml中都有一个日志监听器配置 <listener> <listener-class> org.springframework.web.util.Log4jC ...

  4. C语言基础- Hello World

    第一个C语言程序 Hello World # include <stdio.h> //#关键标识符,表示用用头文件:include:引入都文件关键字 // stdio.h:系统标准输入.输 ...

  5. 工作常用SQL

    工作常用SQL Excel生成SQL 这个好用 ="insert into t_gk_mapping(id,gk_project_name,gk_project_code,main_proj ...

  6. 使用FModel提取黑神话悟空的资产

    目录 前言 设置 效果展示 闲聊 可能遇到的问题 没有相应的UE引擎版本选项 前言 黑神话悟空昨天上线了,解个包looklook. 本文内容比较简洁,仅介绍解包黑神话所需的专项配置,关于FModel的 ...

  7. DDD建模后写代码的正确姿势(Java、dotnet双平台)

    本文书接上回<一种很变态但有效的DDD建模沟通方式>,关注公众号(老肖想当外语大佬)获取信息: 最新文章更新: DDD框架源码(.NET.Java双平台): 加群畅聊,建模分析.技术交流: ...

  8. Linux samba的配置和使用

    samba是什么 samba是什么?能干什么?什么场合需要用到它? samba 是基于SMB协议(ServerMessage Block,信息服务块)的开源软件,samba也可以是SMB协议的商标.S ...

  9. zabbix 应用框架分析

    本文通过源码分析,探究zabbix web应用的整体架构,所有分析基于zabbix 3.0.10进行. 总体而言,zabbix web应用使用PHP开发,大量应用OOP方法,主要采用mvc架构,同时包 ...

  10. Redmi AX6000 刷 OpenWrt

    一直想尝试玩玩软路由,但是家里实在没有软路由的需求,外加不知道该入手什么机器来刷软路由,所以迟迟没有入手.最近研究生要开学了,但是学校的有线网要下载专用软件认证才能上网,终于找到合适的理由入手一款软路 ...