laydate日期组件增长初始时间设置

laydate基于原生javascript编写的日期插件,这是laydate的官网http://sentsin.com/layui/laydatejavascript

真的很感谢做者将这么易用美观的组件开源。前端时间开发系统是,老是要求给页面的时间输入框设置初始值。以前一遇到相似场景一直老老实实的使用new date生成时间格式化成时间后设置到input中,例如:前端

var now = new Date();
 var startTime = $.formatDate("yyyy-MM-dd", now.getTime());
 $("#endTime").val(startTime);

可是后来忍不下去 用了laydate还要每次设置初始值,在这过程当中也问过做者,laydate不支持这样的设置,因而只好研读做者的源代码,废了点心思终于明白了基本的意思,因而找到组件入口的地方,修改入口代码便可支持了,固然这种须要将laydata的初始化方前面执行,不然也是不行的。laydate开发版源码找到laydate入口修改成以下便可。java

//主接口
win.laydate = function(options){
    options = options || {};
    try{
        as.event = win.event ? win.event : laydate.caller.arguments[0];
    } catch(e){};
    Dates.run(options);
    //设置初始化时间,在初始化是增长initDate配置项
    if(options.initDate){
        var de = options.initDate;
        var strDt = Dates.parse([de.getFullYear(), de.getMonth()+1, 
de.getDate()],[de.getHours(), de.getMinutes(), de.getSeconds()],
options.format);
        Dates.query(options.elem).value = strDt;
    }
    return laydate;
};

usage:ui

var start = {
        elem: '#startTime',
        format: 'YYYY-MM-DD',
        max: laydate.now(),
        istime: false,
        istoday: true,
        initDate:new Date(),
        choose: function (datas) {
            
        }
};
相关文章
相关标签/搜索