/**
* 将日期转化为 yyyy-MM 格式 。
* 帮助验证 两个时间要在同一个年月份
* @param dateStr
*/
function formatYearMonth(b_date){
var b_date_year = b_date.getYear();
var b_date_month = b_date.getMonth()+1;
if(b_date_month < 10){
b_date_month = "0" + b_date_month ;
}
return b_date_year +""+ b_date_month;
}
function getDateSub(date_b,date_e){
// 下面的一定要有,否则就会但会一个NaN
var b_date = new Date(Date.parse(date_b.replace(/-/g,‘/‘)));
var e_date = new Date(Date.parse(date_e.replace(/-/g,‘/‘)));
var b_year_month = formatYearMonth(b_date);
var e_year_month = formatYearMonth(e_date);
if(b_year_month != e_year_month){
alert("请保持停场开始日期和结束日期在同一个月份之内。");
return -1 ;
}
return parseInt(Math.abs((e_date-b_date)/86400000)) + 1 ;
}
/**
* 验证停场开始日期到结束日期一定是同一个月
*/
function validateDate(){
var date_b = form.BEGIN_DATE.value;
var date_e = form.END_DATE.value;
// 验证日期格式
if(!isDate(date_b)){
alert("停场开始日期不是有效日期yyyy-mm-dd。");
return false;
}
if(!isDate(date_e)){
alert("停场结束日期不是有效日期yyyy-mm-dd。");
return false
}
if (date_b > date_e){
alert("停场开始日期的起始时间不能晚于结束时间");
return false;
}
// 开始计算 两个日期差值(1-31一共是31 天,而不是 30 天。)
var dateSub = getDateSub(date_b,date_e);
if(dateSub == -1){
return false ;
}
form.TC_DAYS.value = dateSub ;
return true ;
}