jeDate时间插件

时间插件呢,我以前用的是My97DatePicker,效果如图

 最近用的是jeDate,如图

 这个插件也是踩坑~~~记录一下

1.选择时间后,再次选择时间,时间会被重置为今天

    找到jedate.js中的getCurrValue方法,添加代码

                var mats = jet.reMatch(that.format), isEmpty = that.getValue() != "", 
                curVal = [],parmat = that.dlen == 7 ? "hh:mm:ss" : "YYYY-MM" + 
                (that.dlen <= 2 ? "" : "-DD");
                //修改Begin(Important!)
                var result = that.valCell.value;
                result = result.substr(0, 11);
                var nowTime = [jet.parse(jet.getDateTime({}), parmat)];
                nowTime = nowTime[0];
                var time1 = new Date(result).setHours('0');
                var time2 = new Date(nowTime).setHours('0');
                var nDays = (parseInt((time1 - time2) / 1000 / 3600 / 24));
                var redate = {
                    DD: nDays
                };
                //修改End
                that.selectValue = [jet.parse(jet.getDateTime(redate), parmat)];

 

2.不是坑,将开始时间设置为结束时间的最小时间

   (顺便设置一下时间的初始值)

//页面加载初始化
var InitPageData = function () {
    jeDate('#text_btime', linkageBeginDate);//初始化开始时间
    jeDate('#text_etime', linkageEndDate);//初始化结束时间
}
//开始时间
function linkageBeginDate() {
    $("#text_btime").val(timeFormat().split(" ")[0] + " 00:00:00");
    return {
        theme: { bgcolor: "#4aa5ff", pnColor: "#00DDAA" },
        format: 'YYYY-MM-DD hh:mm:ss',//格式
        minDate: '1971-01-01 00:00:00', //设定最小日期
        onClose: false,
        value: "1971-01-01 00:00:00",
        maxDate: function (that) {
            //that 指向实例对象       
            var nowMaxDate = "" ? jeDate.nowDate({ DD: 0 }) : $('#text_etime').val();
            return nowMaxDate
        }, //设定最大日期为当前日期
        donefun: function (obj) {
            jeDate("#text_etime", linkageEndDate(false));
        }
    };
}
//结束时间
function linkageEndDate(istg) {
    $("#text_etime").val(timeFormat().split(" ")[0] + " 23:59:59");
    return {
        trigger: istg || "click",
        theme: { bgcolor: "#4aa5ff", pnColor: "#00DDAA" },
        format: 'YYYY-MM-DD hh:mm:ss',
        onClose: false,
        isinitVal: true,
        minDate: function (that) {
            var nowMinDate = "" ? jeDate.nowDate({ DD: 0 }) : $('#text_btime').val();
            return nowMinDate;
        }, //设定最小日期为当前日期
        maxDate: jeDate.nowDate({ DD: 0 }), //设定最大日期为当前日期          
    };
}
//格式化时间
function timeFormat() {
    var dateTmp = new Date().toJSON();
    return new Date(+new Date(dateTmp) + 8 * 3600 * 1000).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '')
}
posted @ 2019-09-11 10:05  MuZiLily  阅读(1522)  评论(0编辑  收藏  举报