标签:
项目中需要完成对时间段的选择,百度了好多js时间控件,都没有满足,最后发现My97DatePicker。My97DatePicker的具体介绍可以百度,下载地址http://www.my97.net/dp/down.asp,具体的使用可以查看他的API。用了之后才发现原来好多网站用的就是这个插件。
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>日期</title> <script type="text/javascript" src="js/My97DatePicker/WdatePicker.js"></script> <script type="text/javascript" src="js/jquery-1.8.0.js"></script> </head> <body> <br/> <select id="time"> <option value="1" selected="selected"/>今天 <option value="2"/>一周内 <option value="3"/>一个月内 <option value="4"/>时间段 </select> 开始日: <input id="start" type="text" readonly="readonly" disabled="disabled"/> 结束日:<input id="end" type="text" readonly="readonly" disabled="disabled"/> <script type="text/javascript"> //格式化日期 Date.prototype.format = function(format) { var o = { "M+" : this.getMonth() + 1, //month "d+" : this.getDate(), //day "h+" : this.getHours(), //hour "m+" : this.getMinutes(), //minute "s+" : this.getSeconds(), //second "q+" : Math.floor((this.getMonth() + 3) / 3), //quarter "S" : this.getMilliseconds() //millisecond } if (/(y+)/.test(format)) format = format.replace(RegExp.$1, (this.getFullYear() + "") .substr(4 - RegExp.$1.length)); for ( var k in o) if (new RegExp("(" + k + ")").test(format)){ format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); } return format; } $(function() { //当前日期 var currentDate = new Date(); var year = currentDate.getFullYear(); var month = currentDate.getMonth(); var day = currentDate.getDate(); //默认为当前日期 startDate = new Date(year,month,day); $("#start").val(startDate.format("yyyy-MM-dd hh:mm:ss")); $("#end").val(currentDate.format("yyyy-MM-dd hh:mm:ss")); $("#time").change(function() { var time = $(this).val(); var startDate; //开始日 var endDate; //结束日 $("#start").attr("disabled",true); $("#end").attr("disabled",true); $("#start").removeClass(); $("#end").removeClass(); switch (time) { //今天(今天凌晨到现在的时间) case ‘1‘: startDate = new Date(year,month,day); $("#start").val(startDate.format("yyyy-MM-dd hh:mm:ss")); $("#end").val(currentDate.format("yyyy-MM-dd hh:mm:ss")); break; //一周(当前日-7到现在时间) case ‘2‘: var weekDate = new Date(currentDate.getTime() - 7 * 24 * 3600 * 1000); startDate = new Date(weekDate.getFullYear(),weekDate.getMonth(),weekDate.getDate()); $("#start").val(startDate.format("yyyy-MM-dd hh:mm:ss")); $("#end").val(currentDate.format("yyyy-MM-dd hh:mm:ss")); break; //一个月(这个月的第一天的凌晨到第二个月第一天的凌晨) case ‘3‘: startDate = new Date(year,month,1); endDate = new Date(year,month+1,1); $("#start").val(startDate.format("yyyy-MM-dd hh:mm:ss")); $("#end").val(endDate.format("yyyy-MM-dd hh:mm:ss")); break; //时间段 case ‘4‘: $("#start").attr("class","Wdate"); $("#start").attr("disabled",false); $("#start").focus(function(){ WdatePicker({dateFmt:‘yyyy-MM-dd H:mm:ss‘,maxDate:‘#F{$dp.$D(\‘end\‘)||\‘2020-10-01\‘}‘,isShowToday:false,readonly:true}); }); $("#end").attr("class","Wdate"); $("#end").attr("disabled",false); $("#end").focus(function(){ WdatePicker({dateFmt:‘yyyy-MM-dd H:mm:ss‘,minDate:‘#F{$dp.$D(\‘start\‘)}‘,maxDate:‘2020-10-01‘,isShowToday:false,readonly:true}); }); break; } }); }); </script> </body> </html>
标签:
原文地址:http://www.cnblogs.com/duoluomengxing/p/4926067.html