Js文件date.js代码:
var date = new Date();
var today = "";
today = date.getFullYear()+"-"+ (date.getMonth()+1)+"-"+ date.getDate();
function setBEDate(start,end,type){
var param=$("#"+type).val();
var startdate=$("#"+start);
var enddate=$("#"+end);
if(param=='DAY'){
startdate.val(today);
enddate.val(today);
}else if(param=='WEEK'){
var last6today=new Date(); // 获取今天时间
var first6today=new Date();
var day=last6today.getDay();//0是星期日(7) 1是星期一(1)
if(day==0){
day=7;
}
last6today.setDate(last6today.getDate()+(7-day)); // 系统会自动转换
first6today.setDate(first6today.getDate()-day+1); // 系统会自动转换 例如day=7 6天前是星期一 不是7天
startdate.val(first6today.getFullYear()+"-"+ (first6today.getMonth()+1)+"-"+first6today.getDate());
enddate.val(last6today.getFullYear()+"-"+ (last6today.getMonth()+1)+"-"+last6today.getDate());
}else if(param=='MONTH'){
var lastday =getLastDay(date.getFullYear(),date.getMonth()+1) ;
startdate.val(date.getFullYear()+"-"+ (date.getMonth()+1)+"-01");
enddate.val(date.getFullYear()+"-" +(date.getMonth()+1)+"-"+lastday);
}else if(param=='YEAR'){
var lastday =getLastDay(date.getFullYear(),12) ;
startdate.val(date.getFullYear()+"-01-01");
enddate.val(date.getFullYear()+"-12-"+lastday);
}else if(param=='BEFOREYEAR'){
var lastday =getLastDay(date.getFullYear()-1,12) ;
startdate.val("2013-01-01");
enddate.val(date.getFullYear()+"-12-"+lastday);
}
}
function getLastDay(year,month)
{
var new_year = year; //取当前的年份
var new_month = month++;//取下一个月的第一天,方便计算(最后一天不固定)
if(month>12) //如果当前大于12月,则年份转到下一年
{
new_month -=12; //月份减
new_year++; //年份增
}
var new_date = new Date(new_year,new_month,1); //取当年当月中的第一天
return (new Date(new_date.getTime()-1000*60*60*24)).getDate();//获取当月最后一天日期
}
Jsp页面调用:
1.首先引用js文件
<script type="text/javascript" src="${ctx}/tiles/date/date.js"></script>
2、还要引用标签工具文件:
<%@ include file="/ggwdfd/taglibs.jsp" %>
3、taglibs.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="wd" uri="http://www.wondersgroup.com/taglib" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
4、在这里我们需要用到的是:
<%@ taglib prefix="wd" uri="http://www.wondersgroup.com/taglib" %>
wd.tld文件:
<?xml version="1.0" encoding="utf-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd"
version="2.0">
<tlib-version>1.0</tlib-version>
<short-name>wd</short-name>
<!-- 定义该标签库的URI -->
<uri>http://www.wondersgroup.com/taglib</uri>
<!-- 定义第一个标签 -->
<tag>
<name>datepicker</name>
<tag-class>com.wonders.tiles.tag.DatePickerTag</tag-class>
<body-content>empty</body-content>
<attribute>
<name>id</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>name</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>defaultValue</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>className</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>style</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>dateFormat</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>minDate</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>maxDate</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>options</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>others</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
时间:
<select id="datetype" name="datetype" class="selectInput" onchange="setBEDate('startdate','enddate','datetype');">
<option value="BEFOREYEAR">请选择</option>
<option value="DAY">本日</option>
<option value="WEEK">本周</option>
<option value="MONTH">本月</option>
<option value="YEAR">本年</option>
<option value="BEFOREYEAR">历年</option>
</select>
<wd:datepicker id="startdate" name="startdate" defaultValue="${obj.startdate}" style="width:93px" dateFormat="yyyy-MM-dd" className="dfinput" others='datatype="*" nullmsg="请输入开始时间!"'/>~
<wd:datepicker id="enddate" name="enddate" defaultValue="${obj.enddate}" dateFormat="yyyy-MM-dd" style="width:93px" className="dfinput" others='datatype="*" nullmsg="请输入结束时间!"'/>
<input type="button" class="minButton" value="查 询" onclick="check('')" />