关于起止日期比较

2016-09-22  本文已影响105人  black白先森

第一种方式 YYYY-MM-DD HH:MM:SS

chrome 浏览器等先进浏览器

// 非IE8 浏览器 可用的 时间比较方式 =====================
// 这里把 - 换成 / 是为了兼容 safari 浏览器
var start = new Date($("#startDate1").val().replace(/-/g, "/")).getTime();
var end = new Date($("#endDate1").val().replace(/-/g, "/")).getTime();
var difference = end -start;
if(difference < 0){
    $.showTips("起始时间不能大于结束时间!");
    return ;
}

然而 在IE8 浏览器 9没测


1.png

IE 各种不识别 Date() 对象

刚好项目用的 jquery-ui-timepicker

<wxj:cssresource src="/jquery-ui/css/smoothness/jquery-ui-tooltip.min.css"/>
<wxj:cssresource src="/jquery-ui/css/smoothness/jquery-ui-1.10.0.custom.min.css"/>
<wxj:jsresource src="/js/plugin/timepicker/jquery-ui-timepicker-addon.js"/>
<wxj:jsresource src="/js/plugin/timepicker/jquery-ui-timepicker-zh-CN.js"/>

发现可以 用其自带方法 兼容 IE 8

var start = $("#startDate1").datetimepicker('getDate').getTime();
var end = $("#endDate1").datetimepicker('getDate').getTime();
var difference = end -start;
    if(difference < 0){
        $.showTips("起始时间不能大于结束时间!");
        return ;
    }

第二种方式 YYYY-MM-DD

//比较 起始日期--开始日期 大小---格式 YYYY-MM-DD
function checkDateTime(beginValue,endValue){
    var flag = 0;
    if(beginValue!=null && beginValue!="" && endValue!=null && endValue!=""){
     var dateS=beginValue.split('-');
     var dateE=endValue.split('-');
     
     var beginDate=new Date(dateS[0],parseInt(dateS[1] - 1),dateS[2]).getTime();
     var endDate=new Date(dateE[0],parseInt(dateE[1] - 1),dateE[2]).getTime();
     
     if(beginDate>endDate){
         flag=1;
     }else if (beginDate==endDate){
         flag=0;
     }else{
         flag=-1;
     }
    }
    return flag;
}
// 用法
        var flag = checkDateTime($(".j-start-date").val(),$(".j-end-date").val());
        if(flag == 1){
            $.showTips("亲,起始时间不能超过截止时间!");
        }else{

        }
上一篇下一篇

猜你喜欢

热点阅读