layDate 日期与时间组件

一款被广泛使用的高级 Web 日历组件,完全开源无偿且颜值与功能兼备,足以应对日期相关的各种业务场景

下载 layDate 下载量:
下载 layDate 后,将文件夹 laydate 整个放置在您的项目任意目录,使用时只需引入 laydate.js 即可。以下是一个入门示例:
            <!DOCTYPE html>
            <html>
            <head>
            <meta charset="utf-8">
            <title>使用 layDate 独立版</title>
            </head>
            <body>
            <input type="text" id="demoTest">
            <script src="laydate/laydate.js"></script> <!-- 改成你的路径 -->
            <script>
            //执行一个laydate实例
            laydate.render({
            elem: '#demoTest' //指定元素
          });
          </script>
          </body>
          </html>
        
再试牛刀
          //常规用法
          laydate.render({
          elem: '#test1'
        });

        //国际版
        laydate.render({
        elem: '#test1-1'
        ,lang: 'en'
      });
    
        //年选择器
        laydate.render({
        elem: '#test2'
        ,type: 'year'
      });

      //年月选择器
      laydate.render({
      elem: '#test3'
      ,type: 'month'
    });

    //时间选择器
    laydate.render({
    elem: '#test4'
    ,type: 'time'
  });

  //时间选择器
  laydate.render({
  elem: '#test5'
  ,type: 'datetime'
});
-
        //日期范围
        laydate.render({
        elem: '#test6'
        //设置开始日期、日期日期的 input 选择器
        //数组格式为 5.3.0 开始新增,之前版本直接配置 true 或任意分割字符即可
        ,range: ['#test-startDate-1', '#test-endDate-1']
      });

      //年范围
      laydate.render({
      elem: '#test7'
      ,type: 'year'
      ,range: true
    });

    //年月范围
    laydate.render({
    elem: '#test8'
    ,type: 'month'
    ,range: true
  });

  //时间范围
  laydate.render({
  elem: '#test9'
  ,type: 'time'
  ,range: true
});

//日期时间范围
laydate.render({
elem: '#test10'
,type: 'datetime'
,range: true
});
        //自定义格式
        laydate.render({
        elem: '#test11'
        ,format: 'yyyy年MM月dd日'
      });
      laydate.render({
      elem: '#test12'
      ,format: 'dd/MM/yyyy'
    });
    laydate.render({
    elem: '#test13'
    ,format: 'yyyyMM'
  });
  laydate.render({
  elem: '#test14'
  ,type: 'time'
  ,format: 'H点M分'
});
laydate.render({
elem: '#test15'
,type: 'month'
,range: '→'
,format: 'yyyy-MM'
});
laydate.render({
elem: '#test16'
,type: 'datetime'
,range: '到'
,format: 'yyyy年M月d日H时m分s秒'
});
        //开启公历节日
        laydate.render({
        elem: '#test17'
        ,calendar: true
      });

      //自定义重要日
      laydate.render({
      elem: '#test18'
      ,mark: {
      '0-10-14': '生日'
      ,'0-12-31': '跨年' //每年的日期
      ,'0-0-10': '工资' //每月某天
      ,'0-0-15': '月中'
      ,'2017-8-15': '' //如果为空字符,则默认显示数字+徽章
      ,'2099-10-14': '呵呵'
    }
    ,done: function(value, date){
    if(date.year === 2017 && date.month === 8 && date.date === 15){ //点击2017年8月15日,弹出提示语
    alert('这一天是:中国人民抗日战争胜利72周年');
  }
}
});
以9:30-17:30为例
        //限定可选日期
        var ins22 = laydate.render({
        elem: '#test-limit1'
        ,min: '2016-10-14'
        ,max: '2080-10-14'
        ,ready: function(){
        ins22.hint('日期可选值设定在 <br> 2016-10-14 到 2080-10-14');
      }
    });

    //前后若干天可选,这里以7天为例
    laydate.render({
    elem: '#test-limit2'
    ,min: -7
    ,max: 7
  });

  //限定可选时间
  laydate.render({
  elem: '#test-limit3'
  ,type: 'time'
  ,min: '09:30:00'
  ,max: '17:30:00'
  ,btns: ['clear', 'confirm']
});
        //同时绑定多个
        lay('.test-item').each(function(){
        laydate.render({
        elem: this
        ,trigger: 'click'
      });
    });
  
        //初始赋值
        laydate.render({
        elem: '#test19'
        ,value: '1989-10-14'
      });

      //选中后的回调
      laydate.render({
      elem: '#test20'
      ,done: function(value, date){
      alert('你选择的日期是:' + value + '\n获得的对象是' + JSON.stringify(date));
    }
  });

  //日期切换的回调
  laydate.render({
  elem: '#test21'
  ,change: function(value, date){
  alert('你选择的日期是:' + value + '\n\n获得的对象是' + JSON.stringify(date));
}
});

//不出现底部栏
laydate.render({
elem: '#test22'
,showBottom: false
});

//只出现确定按钮
laydate.render({
elem: '#test23'
,btns: ['confirm']
});

//自定义事件
laydate.render({
elem: '#test24'
,trigger: 'mousedown'
});

//点我触发
laydate.render({
elem: '#test25'
,eventElem: '#test25-1'
,trigger: 'click'
});

//双击我触发
lay('#test26-1').on('dblclick', function(){
laydate.render({
elem: '#test26'
,show: true
,closeStop: '#test26-1'
});
});

//日期只读
laydate.render({
elem: '#test27'
,trigger: 'click'
});

//非input元素
laydate.render({
elem: '#test28'
});
        //墨绿主题
        laydate.render({
        elem: '#test29'
        ,theme: 'molv'
      });

      //自定义颜色
      laydate.render({
      elem: '#test30'
      ,theme: '#393D49'
    });

    //格子主题
    laydate.render({
    elem: '#test31'
    ,theme: 'grid'
  });
        //直接嵌套显示
        laydate.render({
        elem: '#test-n1'
        ,position: 'static'
      });
      laydate.render({
      elem: '#test-n2'
      ,position: 'static'
      ,lang: 'en'
    });
    laydate.render({
    elem: '#test-n3'
    ,type: 'month'
    ,position: 'static'
  });
  laydate.render({
  elem: '#test-n4'
  ,type: 'time'
  ,position: 'static'
});