技术:Struts1+jsp+MSql

需求:ncmgt网络监控系统中显示用户的操作日志,并且根据操作时间查询用户的详细操作记录、时间精确到秒

大致效果如下、上图!

大家可以清晰的看到、红色画线部分就是根据时间查询、时间精确到秒、不应该由用户手动输入、不然会大大降低用户体验的性能、这是就用到了时间控件、就是这个小时钟一样的东西、不过他只是一张图片而已、我们要知道它后面所隐藏的东西、先给大家展示一下效果吧、当我们点击小时钟的时候、弹出

这样的日历图片、可以看见最下面一行是加上时分秒的、默认是没有的哦、

下面说一下怎么实现这个效果、

第一步:

引入js文件

在JSP页面的头部

<script language="javascript" src="http://localhost:8080/ncmgt//js/calendar.js"></script>

第二步:

准备一张小图片、

<!--文本框用来接收用户选中的时间、并且传给form里的oplog实体类的属性-->

<input type="text" name="oplogSearch.dateBegin" size="16" value="" readonly="readonly"class="textarea1">

<a href="javascript:buildCal(oplogListForm.elements['oplogSearch.dateBegin'],true)">
<img id="IMG1" src="http://localhost:8080/ncmgt//img/public/clock.gif" alt="请选择日期" width="20"height="20" border="0"></a>
当用户选择了时间、下面这个function就负责把时间放进文本框并提交表单
function closewin(){

//获取登录名和时间
parent.document.forms["0"].elements["oplogSearch.opname"].value
=document.forms["0"].elements["oplogSearch.opname"].value;
parent.document.forms["0"].elements["oplogSearch.dateBegin"].value
=document.forms["0"].elements["oplogSearch.dateBegin"].value;
parent.document.forms["0"].elements["oplogSearch.dateEnd"].value
=document.forms["0"].elements["oplogSearch.dateEnd"].value;
parent.document.forms["0"].submit();
parent.document.getElementById('divWindow').style.display="none";
return false;
}
并不是提交表单就大功告成了、有一个处理是很重要的、如果用户选择的时间是自5.3日 到5.1日。就是我们常说的大于大的、小于小
这是不符合逻辑的、就像大于3又小于1的数字、哪里有这样的呢?为了避免这样的值传到后台的Action、再用户选择了时间之后我们应该做处理
function comparePair(){

var begin,end;
begin = document.forms["0"].elements["oplogSearch.dateBegin"].value;
end = document.forms["0"].elements["oplogSearch.dateEnd"].value;
if(begin > end && end != ""){
alert("您选择的时间有误!');
return false;
}
return true;
}
这样到后台就好处理了、还有一点我用的MySql数据库、在mySQL中处理时间是不能用to_date()的、那是Oracle里的时间日期函数、
我们可以使用Date.format();
例如:
select count(*) from nc_op_log where 1=1    and date <= DATE_FORMAT('2012-05-03 17:28:39','YYYY-MM-DD HH24:MI:SS')  and date >= DATE_FORMAT('2012-05-01 17:28:43','YYYY-MM-DD HH24:MI:SS') 
但如果你字段本身的类型就是Date类型的话、什么函数都不需要、就直接按字符串处理就可以查询到结果
例如:
select count(*) from nc_op_log where 1=1  and date >= '2012-05-01 17:28:43'   and date <= '2012-05-03 17:28:39' 

JSP页面中的精确到秒的时间控件的更多相关文章

  1. jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  2. 【转】jsp页面中jstl标签详解

    原文地址: JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实 ...

  3. jsp页面中jstl标签详解[转]

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  4. Java jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  5. jsp页面中引用其他页面的方法

    初看这个标题....大家的感觉一定是好2啊.....博主一定要说jsp的动态引用(jsp:include)和静态引用(@include)了.介绍这两者区别的文章已经烂大街了..一搜一大把..博主竟然还 ...

  6. jsp页面中创建方法

    在JSP页面中是用 <%! void function(){ } %> 这种方式可以定义函数. 如果只使用 <% //todo %> 代码块中的代码在编译时将会都被加到 sev ...

  7. JSP页面中的pageEncoding和contentType两种属性

    关于JSP页面中的pageEncoding和contentType两种属性的区别: pageEncoding是jsp文件本身的编码 contentType的charset是指服务器发送给客户端时的内容 ...

  8. jsp页面中的java代码

    jsp页面中的java代码 1.jsp表达式  <%= ....%>  只能放置一个变量常量 2. jsp小脚本 <% .... %>  java语句,可以插入一些语句 3. ...

  9. 在jsp页面中实现格式化数字,百分比,货币

    当时的要求是在jsp页面中计算百分比 实现方法 1.引入Jstl的fmt指令 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" ...

随机推荐

  1. highcharts php请求mysql返回json数据作为数据源进行制图

    直接上代码 [官方文档请参见http://www.highcharts.com/docs/working-with-data/getting-data-across-domains-jsonp] [实 ...

  2. ListView 刷新加载控件

    1.MaterialRefreshLayout刷新加载: 导入依赖: compile 'com.cjj.materialrefeshlayout:library:1.3.0' 布局 <com.c ...

  3. python画图设置坐标轴大小

    在console端输入python语句,会一句输一行,而且不保留你所做的操作,但是每一句之间加一个分号就能很好的解决. import pylab as Plot Plot.xlim(-150, 150 ...

  4. (转)sqlplus中文显示乱码的问题

    sqlplus中文显示乱码的问题 2010-07-19 11:33:26 分类: LINUX 在windows下sqlplus完全正常,可是到linux下,sqlplus中文显示就出问题了,总是显示“ ...

  5. (IEEE-754) 字节数组与浮点数之间的互相转换(MODBUS float类型)

    在做上位机开发过程中,经常会碰到字节数组与浮点数,整数等数据之间的转换,有时为了验证数据是否解析正确,得借助于IEEE浮点数工具,本文把基于c#实现的浮点数与字节数组(或16进制的字符串)转换的实现方 ...

  6. acvity和fragment通过广播联系

    今天我遇到一个问题,就是在activity中需要动态改变fragment中的控件,以前看到过可以在activity中得到fragment实例,然后修改控件: 今天实验了一个新的办法,通过新的办法,就是 ...

  7. CSS 选择器

    1.  .   ==> class选择器 2.  #  ==> id选择器 3.  *  ==>选择所有元素 4.<p>  ==>选择所有<p>标签的元 ...

  8. js类型检测

    1.typeof  或者  typeof() 适合基本类型及function检测,遇null失效 ex: typeof 100      返回值为 "number" typeof ...

  9. 在C#中读取枚举值的描述属性

    枚举: public enum EnumLanugage { [System.ComponentModel.Description("中文")] Chinese, English ...

  10. MyBatis 简介

    MyBatis的前身叫iBatis,本是apache的一个开源项目, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis ...