layui-laydate时间日历控件详细示例

layui-laydate时间日历控件详细示例

豆趣编程 2018-05-23 17:18:53  83989  收藏 43

分类专栏: 前端 文章标签: laydate 日历控件

版权

layui下载地址:http://www.layui.com/

此控件可使用layui或者独立版的layDate,两者初始化有些不同

 

 

在 layui 模块中使用layui.code

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>layDate快速使用</title>
  6. <link rel="stylesheet" href="/static/build/layui.css" media="all">
  7. </head>
  8. <body>
  9.  
  10. <div class="layui-inline"> <!-- 注意:这一层元素并不是必须的 -->
  11. <input type="text" class="layui-input" id="test1">
  12. </div>
  13.  
  14. <script src="/static/build/layui.js"></script>
  15. <script>
  16. layui.use('laydate', function(){
  17. var laydate = layui.laydate;
  18.  
  19. //执行一个laydate实例
  20. laydate.render({
  21. elem: '#test1' //指定元素
  22. });
  23. });
  24. </script>
  25. </body>
  26. </html>
  27.  
 

作为独立组件使用layui.code

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>使用 layDate 独立版</title>
  6. </head>
  7. <body>
  8.  
  9. <input type="text" id="test1">
  10.  
  11. <script src="laydate.js"></script>
  12. <script>
  13. //执行一个laydate实例
  14. laydate.render({
  15. elem: '#test1' //指定元素
  16. });
  17. </script>
  18. </body>
  19. </html>

 

详细配置和事件触发,注释写的很清楚了

 
  1. laydate.render({

  2. elem: '#test' //或 elem: document.getElementById('test')、elem: lay('#test') 等(类型:String/DOM,默认值:无必填项,用于绑定执行日期渲染的元素,值一般为选择器,或DOM对象)

  3. ,type: 'year'//year-只提供年列表选择||month-只提供年、月选择||date-可选择:年、月、日。type默认值,一般可不填||time-只提供时、分、秒选择||datetime-可选择:年、月、日、时、分、秒

  4. ,range: true //或 range: '~' 来自定义分割字符

  5. ,format: 'yyyy年MM月dd日' //可任意组合 yyyy年MM月dd日 HH时mm分ss秒===2017年08月18日 20时08分08秒,'yyyy/mm/dd'

  6. ,value: '2018-08-18' //必须遵循format参数设定的格式String,默认值:new Date()

  7. ,min: '2017-1-1'//min/max - 最小/大范围内的日期时间值 类型:string,默认值:min: '1900-1-1'、max: '2099-12-31'

  8. ,max: '2017-12-31'

  9. ,trigger: 'click' // 自定义弹出控件的事件(类型:String,默认值:focus,如果绑定的元素非输入框,则默认事件为:click)-采用click弹出

  10. ,show: true //默认显示-类型:Boolean,默认值:false;;;;如果设置: true,则控件默认显示在绑定元素的区域。通常用于外部事件调用控件

  11. ,position: 'static'//类型:String,默认值:absolute (fixed,absolute,static)

  12. ,zIndex: 99999999//层叠顺序-类型:Number,默认值:66666666一般用于解决与其它元素的互相被遮掩的问题。如果 position 参数设为 static 时,该参数无效

  13. ,showBottom: false//是否显示底部栏--类型:Boolean,默认值:true如果设置 false,将不会显示控件的底部栏区域

  14. ,btns: ['clear', 'now', 'confirm']//类型:Array,默认值:['clear', 'now', 'confirm'](显示清空,今天,确认)

  15. ,lang: 'en'//语言类型:String,默认值:cn--内置了两种语言版本:cn(中文版)、en(国际版,即英文版)

  16. ,theme: 'grid'//主题-类型:String,默认值:default,theme的可选值有:default(默认简约)、molv(墨绿背景)、#颜色值(自定义颜色背景)、grid(格子主题)

  17. ,calendar: true//是否显示公历节日--类型:Boolean,默认值:false

  18. ,mark: {//标注重要日子--类型:Object,默认值:无

  19. '0-10-14': '生日'

  20. ,'0-12-31': '跨年' //每年12月31日

  21. ,'0-0-10': '工资' //每个月10号

  22. ,'2017-8-15': '' //具体日期

  23. ,'2017-8-20': '预发' //如果为空字符,则默认显示数字+徽章

  24. ,'2017-8-21': '发布'

  25. }

  26. ,ready: function(date){//控件在打开时触发,回调返回一个参数

  27. console.log(date); //得到初始的日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}

  28. }

  29. ,change: function(value, date, endDate){//日期时间被切换后的回调

  30. console.log(value); //得到日期生成的值,如:2017-08-18

  31. console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}

  32. console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。

  33. }

  34. ,done: function(value, date, endDate){//控件选择完毕后的回调---点击日期、清空、现在、确定均会触发。

  35. console.log(value); //得到日期生成的值,如:2017-08-18

  36. console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}

  37. console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。

  38. }

  39. });

---------------------------------------------分割线---------------------------------------------------------

ps:评论有人问range问题,是这样用的:

 
  1. layui.use('laydate', function(){

  2. var laydate = layui.laydate;

  3. //执行一个laydate实例

  4. laydate.render({

  5. elem: '#test1', //指定元素

  6. range:'~',

  7. value: '2019-04-16 ~ 2019-04-19'

  8. });

  9. });

设置默认值时value 的值不是用数组,是要用跟input中展示的格式一样,这样点击input会自动显示默认区间范围

range也可以写成 range:true ,这样分隔符默认为 ‘-’ ,也就是2019-04-16 - 2019-04-19

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liaozhaorong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值