bootstrap daterangepicker双日历时间段选择控件详解


Posted in Javascript onJune 15, 2017

双日历时间段选择插件 — daterangepicker是bootstrap框架后期的一个时间控件,可以设定多个时间段选项,也可以自定义时间段,由用户自己选择起始时间和终止时间,时间段的最大跨度可以在程序里设定。我们项目里用到的Bootstrap版本是2.3.1,所以我把daterangepicker与Bootstrap-2.3.1进行了整合。  

一、需要引入的css与js 

<link href="bootstrap.min.css" rel="stylesheet">   
<link rel="stylesheet" type="text/css" media="all" href="daterangepicker-bs3.css" /> 
<link rel="stylesheet" type="text/css" media="all" href="daterangepicker-1.3.7.css" /> 
<link href="font-awesome-4.1.0/css/font-awesome.min.css" rel="stylesheet"> 
 
<script type="text/javascript" src="jquery-1.10.1.min.js"></script> 
<script type="text/javascript" src="bootstrap.min.js"></script> 
<script type="text/javascript" src="moment.js"></script> 
<script type="text/javascript" src="daterangepicker-1.3.7.js"></script>

 二、html部分代码

<div class="page-content"> 
      <!-- BEGIN PAGE CONTAINER--> 
  <div class="container-fluid"> 
    <div class="row-fluid" style="margin-top:5px"> 
      <div class="span4"> 
        <div class="control-group"> 
          <label class="control-label"> 
            日期: 
          </label> 
        <div class="controls"> 
          <div id="reportrange" class="pull-left dateRange" style="width:350px"> 
            <i class="glyphicon glyphicon-calendar fa fa-calendar"></i> 
            <span id="searchDateRange"></span> 
            <b class="caret"></b> 
          </div> 
        </div> 
      </div> 
    </div> 
  </div> 
</div>

三、使用js调用daterangepicker 

<script type="text/javascript"> 
    $(document).ready(function (){ 
          //时间插件 
          $('#reportrange span').html(moment().subtract('hours', 1).format('YYYY-MM-DD HH:mm:ss') + ' - ' + moment().format('YYYY-MM-DD HH:mm:ss')); 
     
          $('#reportrange').daterangepicker( 
              { 
                // startDate: moment().startOf('day'), 
                //endDate: moment(), 
                //minDate: '01/01/2012',  //最小时间 
                maxDate : moment(), //最大时间  
                dateLimit : { 
                  days : 30 
                }, //起止时间的最大间隔 
                showDropdowns : true, 
                showWeekNumbers : false, //是否显示第几周 
                timePicker : true, //是否显示小时和分钟 
                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 HH:mm:ss', //控件中from和to 显示的日期格式 
                separator : ' to ', 
                locale : { 
                  applyLabel : '确定', 
                  cancelLabel : '取消', 
                  fromLabel : '起始时间', 
                  toLabel : '结束时间', 
                  customRangeLabel : '自定义', 
                  daysOfWeek : [ '日', '一', '二', '三', '四', '五', '六' ], 
                  monthNames : [ '一月', '二月', '三月', '四月', '五月', '六月', 
                      '七月', '八月', '九月', '十月', '十一月', '十二月' ], 
                  firstDay : 1 
                } 
              }, function(start, end, label) {//格式化日期显示框 
                 
                $('#reportrange span').html(start.format('YYYY-MM-DD HH:mm:ss') + ' - ' + end.format('YYYY-MM-DD HH:mm:ss')); 
              }); 
 
      //设置日期菜单被选项 --开始-- 
     /* 
         var dateOption ; 
         if("${riqi}"=='day') { 
            dateOption = "今日"; 
         }else if("${riqi}"=='yday') { 
            dateOption = "昨日"; 
         }else if("${riqi}"=='week'){ 
            dateOption ="最近7日"; 
         }else if("${riqi}"=='month'){ 
            dateOption ="最近30日"; 
         }else if("${riqi}"=='year'){ 
            dateOption ="最近一年"; 
         }else{ 
            dateOption = "自定义"; 
         } 
          $(".daterangepicker").find("li").each(function (){ 
            if($(this).hasClass("active")){ 
              $(this).removeClass("active"); 
            } 
            if(dateOption==$(this).html()){ 
              $(this).addClass("active"); 
            } 
         });*/ 
            //设置日期菜单被选项 --结束-- 
    }) 
</script>

 四、效果图

bootstrap daterangepicker双日历时间段选择控件详解

五、实例下载地址

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
replace()方法查找字符使用示例
Oct 28 Javascript
判断文档离浏览器顶部的距离的方法
Jan 08 Javascript
js实现文本框支持加减运算的方法
Aug 19 Javascript
七夕情人节丘比特射箭小游戏
Aug 20 Javascript
谈谈javascript中使用连等赋值操作带来的问题
Nov 26 Javascript
Bootstrap每天必学之缩略图与警示窗
Nov 29 Javascript
JS对象的深度克隆方法示例
Mar 16 Javascript
整理关于Bootstrap表单的慕课笔记
Mar 29 Javascript
完美解决浏览器跨域的几种方法(汇总)
May 08 Javascript
JS文件中加载jquery.js的实例代码
May 05 jQuery
vue项目中运用webpack动态配置打包多种环境域名的方法
Jun 24 Javascript
Javascript Web Worker使用过程解析
Mar 16 Javascript
详解react-router如何实现按需加载
Jun 15 #Javascript
jQuery实现 RadioButton做必选校验功能
Jun 15 #jQuery
bootstrap daterangepicker汉化以及扩展功能
Jun 15 #Javascript
validationEngine 表单验证插件使用实例代码
Jun 15 #Javascript
JS 设置Cookie 有效期 检测cookie
Jun 15 #Javascript
详解react如何在组件中获取路由参数
Jun 15 #Javascript
react-router JS 控制路由跳转实例
Jun 15 #Javascript
You might like
给海燕B411配件机起死回生配上件
2021/03/02 无线电
cache_lite试用
2007/02/14 PHP
PHP生成Gif图片验证码
2013/10/27 PHP
php的一个简单加密解密代码
2014/01/14 PHP
php 生成Tab键或逗号分隔的CSV
2016/09/24 PHP
基于jQuery UI CSS Framework开发Widget的经验
2010/08/21 Javascript
javascript实现详细时间提醒信息效果的方法
2015/03/11 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
2015/06/24 Javascript
老生常谈js中0到底是 true 还是 false
2017/03/08 Javascript
ionic环境配置及问题详解
2017/06/27 Javascript
angular中ui calendar的一些使用心得(推荐)
2017/11/03 Javascript
微信小程序实现弹出层效果
2020/05/26 Javascript
JavaScript对象访问器Getter及Setter原理解析
2020/12/08 Javascript
[01:06:12]VP vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
使用python绘制人人网好友关系图示例
2014/04/01 Python
详细介绍Ruby中的正则表达式
2015/04/10 Python
Python字符编码与函数的基本使用方法
2017/09/30 Python
python爬虫自动创建文件夹的功能
2018/08/01 Python
Python3实现爬虫爬取赶集网列表功能【基于request和BeautifulSoup模块】
2018/12/05 Python
Python Pillow Image Invert
2019/01/22 Python
Python使用Pandas对csv文件进行数据处理的方法
2019/08/01 Python
Python class的继承方法代码实例
2020/02/14 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
Python从文件中读取数据的方法步骤
2020/11/18 Python
详解使用scrapy进行模拟登陆三种方式
2021/02/21 Python
Cotton On香港网站:澳洲时装连锁品牌
2018/11/01 全球购物
音乐系毕业生自荐信
2013/10/27 职场文书
销售会计工作职责
2013/12/02 职场文书
学前班教师的自我鉴定
2013/12/05 职场文书
大学新生军训感言
2014/02/25 职场文书
党的群众路线教育实践活动对照检查材料思想汇报(党员篇)
2014/09/25 职场文书
县委党的群众路线教育实践活动工作情况报告
2014/10/25 职场文书
旅游项目合作意向书
2015/05/08 职场文书
优秀团员主要事迹范文
2015/11/05 职场文书
英语教学课后反思
2016/02/15 职场文书
2017春节晚会开幕词
2016/03/03 职场文书