一、核心方法:laydate(options); options是一个对象,它包含了以下key: '默认值' { elem: '#id', //需显示日期的元素选择器 event: 'click', //触发事件 format: 'YYYY-MM-DD hh:mm:ss', //日期格式 istime: false, //是否开启时间选择 isclear: true, //是否显示清空 istoday: true, //是否显示今天 issure: true, 是否显示确认 festival: true //是否显示节日 min: '1900-01-01 00:00:00', //最小日期 max: '2099-12-31 23:59:59', //最大日期 start: '2014-6-15 23:00:00', //开始日期 fixed: false, //是否固定在可视区域 zIndex: 99999999, //css z-index choose: function(dates){ //选择好日期的回调 } } 二、其它方法/属性 laydate.v //获取laydate版本号 laydate.skin(lib); //加载皮肤,参数lib为皮肤名 /* layer.now支持多类型参数。timestamp可以是前后若干天,也可以是一个时间戳。format为日期格式,为空时则采用默认的“-”分割。 如laydate.now(-2)将返回前天,laydate.now(3999634079890)将返回2096-09-28 */ layer.now(timestamp, format); //该方法提供了丰富的功能,推荐灵活使用。 laydate.reset(); //重设日历控件坐标,一般用于页面dom结构改变时。无参
基本实现效果
例1:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>layui</title> <meta name="renderer" content="webkit"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <link rel="stylesheet" href="css/layui.css" media="all"> </head> <body> <blockquote class="layui-elem-quote">目前Layui中的日期组件还是layDate 1.1的改良版,它后续将会进行一次重写。</blockquote> <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;"> <legend>顺便列举几个常用例子</legend> </fieldset> <div class="layui-inline"> <input class="layui-input" placeholder="自定义日期格式" onclick="layui.laydate({elem: this, istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"> </div> <div class="layui-inline"> <input class="layui-input" placeholder="开启节日" onclick="layui.laydate({elem: this, festival: true})"> </div> <div class="layui-inline"> <input class="layui-input" placeholder="只能选昨天到明天" onclick="layui.laydate({elem: this, min: laydate.now(-1), max: laydate.now(+1)})"> </div> <div class="layui-form-pane" style="margin-top: 15px;"> <div class="layui-form-item"> <label class="layui-form-label">范围选择</label> <div class="layui-input-inline"> <input class="layui-input" placeholder="开始日" id="LAY_demorange_s"> </div> <div class="layui-input-inline"> <input class="layui-input" placeholder="截止日" id="LAY_demorange_e"> </div> </div> </div> <script src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script> <script src="layui.js" charset="utf-8"></script> <script> layui.use('laydate', function(){ var laydate = layui.laydate; var start = { min: laydate.now() ,max: '2099-06-16 23:59:59' ,istoday: false ,choose: function(datas){ end.min = datas; //开始日选好后,重置结束日的最小日期 end.start = datas //将结束日的初始值设定为开始日 } }; var end = { min: laydate.now() ,max: '2099-06-16 23:59:59' ,istoday: false ,choose: function(datas){ start.max = datas; //结束日选好后,重置开始日的最大日期 } }; document.getElementById('LAY_demorange_s').onclick = function(){ start.elem = this; laydate(start); } document.getElementById('LAY_demorange_e').onclick = function(){ end.elem = this laydate(end); } }); </script> </body> </html>