BootStrap daterangepicker 双日历控件


Posted in Javascript onJune 02, 2017

bootstrap-daterangepicker点击下载

需要bootstrap跟jquery的支持。

实例代码:

<!DOCTYPE html> 
<html> 
 <head> 
 <meta charset="UTF-8"> 
 <title></title> 
 <link href="bootstrap/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet"> 
 <link rel="stylesheet" type="text/css" media="all" href="daterangepicker/daterangepicker.css" rel="external nofollow" /> 
 </head> 
 <body> 
 <form class="form-inline"> 
  <div id="divDateId" class="pull-left dateRange"> 
  <input class="form-control" id="searchDate"></input> 
  <i class="glyphicon glyphicon-calendar fa fa-calendar"></i> 
  </div> 
 </form> 
 </body> 
 <script type="text/javascript" src="jquery/1.12.4/jquery.min.js" ></script> 
 <script type="text/javascript" src="bootstrap/js/bootstrap.min.js" ></script> 
 <script type="text/javascript" src="daterangepicker/moment.min.js" ></script> 
 <script type="text/javascript" src="daterangepicker/daterangepicker.js" ></script> 
 <script type="text/javascript"> 
 //默认三十天 
 $('#divDateId input').val(moment().subtract('days', 29).format('YYYY-MM-DD') + ' - ' + moment().format('YYYY-MM-DD')); 
 $('#divDateId').daterangepicker({ 
  minDate: '01/01/2015', //最小时间 
  maxDate : moment(), //最大时间 
  dateLimit : { 
  days : 365*5 
  }, //起止时间的最大间隔 
  showDropdowns : true, 
  showWeekNumbers : false, //是否显示第几周 
  timePicker : false, //是否显示小时和分钟 
  timePickerIncrement : 60, //时间的增量,单位为分钟 
  timePicker12Hour : false, //是否使用12小时制来显示时间 
  ranges : { 
  //'最近1小时': [moment().subtract('hours',1), moment()], 
  '今日': [moment().startOf('day'), moment()], 
  '昨日': [moment().subtract('days', 1).startOf('day'), moment().subtract('days', 1).endOf('day')], 
  '最近7日': [moment().subtract('days', 6), moment()], 
  '最近30日': [moment().subtract('days', 29), moment()] 
  }, 
  opens : 'right', //日期选择框的弹出位置 
  buttonClasses : [ 'btn btn-default' ], 
  applyClass : 'btn-small btn-primary blue', 
  cancelClass : 'btn-small', 
  format : 'YYYY-MM-DD', //控件中from和to 显示的日期格式 
  separator : ' to ', 
  locale : { 
  applyLabel : '确定', 
  cancelLabel : '取消', 
  fromLabel : '起始时间', 
  toLabel : '结束时间', 
  customRangeLabel : '自定义', 
  daysOfWeek : [ '日', '一', '二', '三', '四', '五', '六' ], 
  monthNames : [ '一月', '二月', '三月', '四月', '五月', '六月', 
    '七月', '八月', '九月', '十月', '十一月', '十二月' ], 
    firstDay : 1 
  } //汉化日期控件 
 }, function(start, end, label) { 
  //格式化日期显示框 
  $('#searchDate').val(start.format('YYYY-MM-DD') + ' - ' + end.format('YYYY-MM-DD')); 
 }); 
 </script> 
</html>

实例图片:

BootStrap daterangepicker 双日历控件

参数说明:

`startDate`: (Date object, moment object or string) 起始时间
`endDate`: (Date object, moment object or string) 结束时间
`minDate`: (Date object, moment object or string) 可选最早时间
`maxDate`: (Date object, moment object or string) 可选最迟时间
`timePicker`: (boolean) 是否显示time选择
`timePickerIncrement`: (number) time选择递增数
`timePicker12Hour`: (boolean) 是否12小时制
`opens`: (string: 'left'/'right') 显示在元素左边还是右边
`buttonClasses`: (array) 按钮样式
`applyClass`: (string) 应用按钮样式
`cancelClass`: (string) 取消按钮样式
`format`: (string) date/time格式
`separator`: (string) 分隔符
`locale`: (object) 本地设置
`singleDatePicker`: (boolean) 是否是单个时间选择器
`parentEl`: (string) 将控件放到哪个元素内,默认body

其中有一个小需求调整,当我们直接使用源码选择时,为啦方便用户操作,控件在下拉选择月份时,自动帮我们刷新啦另一个控件上的日期,两个日期相差都在一个月,比如我选择1月到6月时,两个日期面板上显示不上一个1月,一个六月,如图:

BootStrap daterangepicker 双日历控件

如果不需要这种变化,可以修改daterangepicker.js的代码:

注释1444行跟1445行,1448跟1449行,不让它自动去改变日期面板:

BootStrap daterangepicker 双日历控件

在注释掉582行:

BootStrap daterangepicker 双日历控件

这样就能达到改变日期不改变面板的效果啦:

BootStrap daterangepicker 双日历控件

以上所示是小编给大家介绍的BootStrap daterangepicker 双日历控件,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复的,在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
IE下使用cloneNode注意事项分享
Nov 22 Javascript
javascript if条件判断方法小结
May 17 Javascript
JS获取各种宽度、高度的简单介绍
Dec 19 Javascript
Javascript中获取对象的原型对象的方法小结
Feb 25 Javascript
js实现Select头像选择实时预览代码
Aug 17 Javascript
Javascript数组Array方法解读
Mar 13 Javascript
Chrome不支持showModalDialog模态对话框和无法返回returnValue问题的解决方法
Oct 30 Javascript
Node.js Stream ondata触发时机与顺序的探索
Mar 08 Javascript
vue进入页面时滚动条始终在底部代码实例
Mar 26 Javascript
JS异步错误捕获的一些事小结
Apr 26 Javascript
微信小程序云开发实现增删改查功能
May 17 Javascript
Vue+Java 通过websocket实现服务器与客户端双向通信操作
Sep 22 Javascript
ES6中箭头函数的定义与调用方式详解
Jun 02 #Javascript
Js实现京东无延迟菜单效果实例(demo)
Jun 02 #Javascript
javascript实现延时显示提示框效果
Jun 01 #Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
Jun 01 #jQuery
vue.js 获取当前自定义属性值
Jun 01 #Javascript
VUE使用vuex解决模块间传值问题的方法
Jun 01 #Javascript
vue快捷键与基础指令详解
Jun 01 #Javascript
You might like
PHP中array_slice函数用法实例详解
2014/11/25 PHP
实例解析php的数据类型
2018/10/24 PHP
浅谈laravel aliases别名的原理
2019/10/24 PHP
JS自定义选项卡函数及用法实例分析
2015/09/02 Javascript
jQuery height()、innerHeight()、outerHeight()函数的区别详解
2016/05/23 Javascript
浅谈jQuery 中的事件冒泡和阻止默认行为
2016/05/28 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
ionic中列表项增加和删除的实现方法
2017/01/22 Javascript
基于ES6 Array.of的用法(实例讲解)
2017/09/05 Javascript
微信小程序自定义组件封装及父子间组件传值的方法
2018/08/28 Javascript
微信小程序实现的点击按钮 弹出底部上拉菜单功能示例
2018/12/20 Javascript
vue-cli3 从搭建到优化的详细步骤
2019/01/20 Javascript
JS学习笔记之数组去重实现方法小结
2019/05/29 Javascript
微信小程序npm引入vant-weapp的踩坑记录
2019/08/01 Javascript
echarts实现获取datazoom的起始值(包括x轴和y轴)
2020/07/20 Javascript
解决vue做详情页跳转的时候使用created方法 数据不会更新问题
2020/07/24 Javascript
如何在现代JavaScript中编写异步任务
2021/01/31 Javascript
[03:04]DOTA2英雄基础教程 影魔
2013/12/11 DOTA
[08:02]DOTA2牵红线 zhou神抱得美人归
2014/03/22 DOTA
在Python中使用swapCase()方法转换大小写的教程
2015/05/20 Python
Python书单 不将就
2017/07/11 Python
python多进程实现进程间通信实例
2017/11/24 Python
深入理解Django的中间件middleware
2018/03/14 Python
python用opencv批量截取图像指定区域的方法
2019/01/24 Python
Python求两点之间的直线距离(2种实现方法)
2019/07/07 Python
Python + Flask 实现简单的验证码系统
2019/10/01 Python
Python调用钉钉自定义机器人的实现
2020/01/03 Python
新闻专业本科生的自我评价分享
2013/11/20 职场文书
集团公司人力资源部岗位职责
2014/01/03 职场文书
师范学院教师自荐书
2014/01/31 职场文书
清明节扫墓活动方案
2014/03/02 职场文书
廉洁自律个人总结
2015/02/14 职场文书
2015年小学中秋节活动总结
2015/03/23 职场文书
最新农村养殖致富:资金投入较低的创业项目有哪些?
2019/09/26 职场文书
python 统计代码耗时的几种方法分享
2021/04/02 Python