近日做项目涉及到日期选择,为了用户界面友好,于是加入了一年内的年月段的查询功能,先看效果

会自动判断当前年份

以下为html代码 其中用到了 Jquery 和 struts 标签 但是这两个都不是重要的 主要书 用于赋值 和 取值方便

还用到了 WdatePicker 插件进行具体日期选择

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<script type="text/javascript" src="<%=path%>/js/jquery-1.9.0.js">
<script type="text/javascript">
$(function(){ selectMonth();
})
//年月选择 star
function selectMonth(){
var myDate = new Date();
var year = myDate.getUTCFullYear();
var month = myDate.getUTCMonth ();
var dateList = new Array();
var endDay;
for(var i=0;i<=12;i++){
var m = month+i;
endDay = maxDay(m,year-1);
if(m<12)
dateList.push((year-1)+"-"+(m+1)+"~"+endDay);
else
dateList.push(year+"-"+(m-11)+"~"+endDay);
}
dateList.reverse();
$.each(dateList,function(idx,item){
var ym = item.split("~");
var mon = ym[0].split("-");
if(mon[1]==(month+1) && mon[0] == year)
$("#dateList").append("<option value="+myDate.getDate()+">"+"本月"+"</option>");
else
$("#dateList").append("<option value="+ym[1]+">"+ym[0]+"</option>");
}) getEndTime(); } function maxDay(month,year){//获得某年某月最大天数
var d= new Date();
d.setUTCFullYear(year,month);
return new Date(d.getFullYear(), d.getMonth()+1,0).getDate();
} function getEndTime(){ //动态生成 月初日期 和 月末日期
var list = $("#dateList option:selected");
var selMonth = $("#dateList option:selected").html()
if( selMonth == "本月"){
var d = new Date();
$("#starTime").val(d.getUTCFullYear()+"-"+(d.getUTCMonth()+1)+"-1");
$("#endTime").val(d.getUTCFullYear()+"-"+(d.getUTCMonth()+1)+"-"+list.val());
}else{
$("#starTime").val(selMonth+"-1");
$("#endTime").val(selMonth+"-"+list.val());
}
} //年月选择end
</script>
<body>
<td nowrap="nowrap" style="width: 15%" align="center">
日期:
<select id="dateList" onchange="getEndTime()"> </select>

<input name="starTime" id="starTime"
value="<s:date name="starTime" format="yyyy-MM-dd"/>"
onFocus="WdatePicker()" class="Wdate"
style="width: 110px; height: 17px; border-left: 0; border-top: 0; border-right: 0; border-bottom-color: #C06" />

<input name="endTime" id="endTime"
value="<s:date name="endTime" format="yyyy-MM-dd"/>"
onFocus="WdatePicker()" class="Wdate"
style="width: 110px; height: 17px; border-left: 0; border-top: 0; border-right: 0; border-bottom-color: #C06" /> </td>
</body>

以上为核心代码,有需要的兄弟尽管拿去用,如有更好的请帮忙推荐。

最新文章

  1. hg0088新2网址:已经做好了封装直接拿来就能用功能齐全
  2. 项目中运行报错: Loading XML bean definitions from class path resource [applicationContext.xml]
  3. Asp.net Web API 返回Json对象的两种方式
  4. dev中控件属性设置
  5. atom 折腾记(转载的)
  6. document.write和innerHTML的区别
  7. linux gksu用法
  8. Unity3D开发类似保龄球游戏
  9. springboot 配置文件 .properties和.yml的写法区别
  10. Android较低版本(&lt;5.2) 页面默认Select选择框效果的BUG解决
  11. IE 中开发,兼容与性能测试工具汇总
  12. Web Components
  13. Hadoop权威指南:FSDataInputStream对象
  14. PHP八大设计模式
  15. JVM内存初学 堆、栈、方法区
  16. 洛谷P3383线性筛素数
  17. React、Redux 和 Bootstrap
  18. python基础----&gt;python的使用(七)
  19. SQLServer中对时间和长度的处理
  20. 2.1 Oracle之DML的SQL语句之单表查询以及函数

热门文章

  1. 怎样使用LaTeX输入葡萄牙语等语言中的特殊字符
  2. wget命令3(转载)
  3. Restful风格的springMVC配搭ajax请求的小例子
  4. Struts2(三)——数据在框架中的数据流转问题
  5. java笔记之静态修饰附和单例设计模式
  6. 【剑指Offer学习】【面试题60:把二叉树打印出多行】
  7. JavaScript面向对象精要(一)
  8. JAX-RS开发 hello world
  9. 淘宝对接API
  10. android——ObjectAnimator动画(一)