开始时间,结束时间算法

function isLeapYear(iYear){ //判断闰、平年
return ((iYear % 4 == 0) && ((iYear % 100 != 0) || (iYear % 400 == 0)));
}

_daysInMonth = [31,28,31,30,31,30,31,31,30,31,30,31]; //每月天数

function fakeAddMonth(iYear,iMonth,iDate,iIncrement) {
if(iMonth + iIncrement > 11) { //判断是否超过一年
++iYear;
iMonth += iIncrement - 12;
}else{
iMonth += iIncrement;
}
--iDate;
var daysMonth = daysInMonth(iYear,iMonth);
iDate = iDate > daysMonth ? daysMonth: iDate;
return new Date(iYear,iMonth,iDate);
}
function daysInMonth(iYear, iMonth){ //获得2月份的天数
//February
if(1 == iMonth){
return isLeapYear(iYear) ? 29: 28;
}else {
return _daysInMonth[iMonth];
}
}
function strToDate(sDateString,regFormat){ //获得年月日
regFormat = regFormat ? regFormat: /(\d{4})-(\d{1,2})-(\d{1,2})/;
var arrMatched = /(\d{4})-(\d{1,2})-(\d{1,2})/.exec(sDateString);
if(arrMatched){
var iYear = parseInt(arrMatched[1],10);
var iMonth = parseInt(arrMatched[2],10);
var iDay = parseInt(arrMatched[3],10);
if(iMonth > 12 || iMonth < 1) return null;
if(iDay > daysInMonth(iYear,iMonth - 1)) return null;
return new Date(iYear, iMonth - 1, iDay, 0, 0, 0, 0);
}
return null;
}


页面调用js
function beginDateOnChange(){
//if(validateBeginDate()) {

var oBeginDate = strToDate($_('contractBeginDate').value);
var oEndDate = fakeAddMonth(oBeginDate.getFullYear(),oBeginDate.getMonth(),oBeginDate.getDate(),12);
/*var oEndDate = oBeginDate;
if(_insureDay != '')
oEndDate.setDate(oBeginDate.getDate()+parseInt(_insureDay)-1);*/
$_('contractEndDateY').innerHTML = oEndDate.getFullYear();
$_('contractEndDateM').innerHTML = oEndDate.getMonth() + 1;
$_('contractEndDateD').innerHTML = oEndDate.getDate();
$_('contractEndDate').value = oEndDate.getFullYear() + '-' + (oEndDate.getMonth() + 1) + '-' + oEndDate.getDate();
return true;
//}
//return false;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值