JavScript 日期格式化


//日期格式化
function formatDate(date,fmt) {
if(date == null || typeof (date) == undefined || date == ''){
date = new Date();
} if(typeof (fmt) == undefined || fmt == null || fmt == ""){
fmt = "yyyy-MM-dd HH:mm:ss";
}
var o = {
"M+" : date.getMonth()+1, //月份
"d+" : date.getDate(), //日
"h+" : date.getHours()%12 == 0 ? 12 : date.getHours()%12, //小时
"H+" : date.getHours(), //小时
"m+" : date.getMinutes(), //分
"s+" : date.getSeconds(), //秒
"q+" : Math.floor((date.getMonth()+3)/3), //季度
"S" : date.getMilliseconds() //毫秒
};
var week = {
"0" : "/u65e5",
"1" : "/u4e00",
"2" : "/u4e8c",
"3" : "/u4e09",
"4" : "/u56db",
"5" : "/u4e94",
"6" : "/u516d"
};
if(/(y+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1, (date.getFullYear()+"").substr(4 - RegExp.$1.length));
}
if(/(E+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[date.getDay()+""]);
}
for(var k in o){
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
}
}
return fmt;
} //返回一个结束日期
function getEndMinDate(){
var startTimeStr = trim($("#startTime").val()); var now = new Date();
var nowStr = formatDate(now,'yyyy-MM-dd HH:mm:ss'); if(startTimeStr == ''){
return nowStr;
}else{
var startTime = new Date(Date.parse(startTimeStr)); //如果开始日期不为空且大于当前日期,那么就返回和开始日期相同的日期
if(startTime >= now){
return startTimeStr;
} //否则返回当前日期
return nowStr;
}
} <!-- 日期控件 -->
<input type="text" name="startTime" id="startTime" style="width: 140px;" class="input" placeholder="开始时间" onfocus="WdatePicker({maxDate:'#F{$dp.$D(\'endTime\')}',dateFmt:'yyyy-MM-dd HH:mm:ss'})">
 到 
<input type="text" name="endTime" id="endTime" style="width: 140px;" class="input" placeholder="结束时间" onfocus="var date=getEndMinDate();WdatePicker({minDate:date,dateFmt:'yyyy-MM-dd HH:mm:ss'})">
//--------------------------------------------------------
//日期默认展示,开始日期为一周前,结束日期为当天
$(function(){
//日期默认展示
var now = new Date();
var days = -6;
var startTime = new Date();
startTime.setDate(now.getDate()+days); var startTimeStr = formatDate(startTime,'yyyy-MM-dd');
var endTimeStr = formatDate(now,'yyyy-MM-dd'); $("#startTime").val(startTimeStr+" 00:00:00");
$("#endTime").val(endTimeStr+" 23:59:59"); });
05-19 09:33