daterangepicker 时间区间选择

var table;
   $(function () {
       table = $(‘#example‘).DataTable({
           "ajax": {
               "url":"/example/resources/server_processing_customCUrl.php",
               "data": function ( d ) {
                   //添加额外的参数传给服务器
                   d.extra_search = $(‘#reportrange span‘).html();
               }},
           "processing": true,
           "serverSide": true,
           "language": {
               "sProcessing": "处理中...",
               "sLengthMenu": "显示 _MENU_ 项结果",
               "sZeroRecords": "没有匹配结果",
               "sInfo": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",
               "sInfoEmpty": "显示第 0 至 0 项结果,共 0 项",
               "sInfoFiltered": "(由 _MAX_ 项结果过滤)",
               "sInfoPostFix": "",
               "sSearch": "搜索:",
               "sUrl": "",
               "sEmptyTable": "表中数据为空",
               "sLoadingRecords": "载入中...",
               "sInfoThousands": ",",
               "oPaginate": {
                   "sFirst": "首页",
                   "sPrevious": "上页",
                   "sNext": "下页",
                   "sLast": "末页"
               },
               "oAria": {
                   "sSortAscending": ": 以升序排列此列",
                   "sSortDescending": ": 以降序排列此列"
               }
           },
           "dom":
                   "<‘row‘<‘span9‘l<‘#mytoolbox‘>><‘span3‘f>r>"+
                   "t"+
                   "<‘row‘<‘span6‘i><‘span6‘p>>"  ,
           initComplete:initComplete
       });

   });

   /**
    * 表格加载渲染完毕后执行的方法
    * @param data
    */
   function initComplete(data){

       var dataPlugin =
               ‘<div id="reportrange" class="pull-left dateRange" style="width:400px;margin-left: 10px"> ‘+
               ‘日期:<i class="glyphicon glyphicon-calendar fa fa-calendar"></i> ‘+
               ‘<span id="searchDateRange"></span>  ‘+
               ‘<b class="caret"></b></div> ‘;
       $(‘#mytoolbox‘).append(dataPlugin);
       //时间插件
       $(‘#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");
           }
       });
       //设置日期菜单被选项  --结束--

       //选择时间后触发重新加载的方法
       $("#reportrange").on(‘apply.daterangepicker‘,function(){
           //当选择时间后,出发dt的重新加载数据的方法
           table.ajax.reload();
           //获取dt请求参数
           var args = table.ajax.params();
           console.log("额外传到后台的参数值extra_search为:"+args.extra_search);
       });

       function getParam(url) {
           var data = decodeURI(url).split("?")[1];
           var param = {};
           var strs = data.split("&");

           for(var i = 0; i<strs.length; i++){
               param[strs[i].split("=")[0]] = strs[i].split("=")[1];
           }
           return param;
       }
   }

  

时间: 2024-09-29 03:01:19

daterangepicker 时间区间选择的相关文章

My97设置开始、结束 时间区间及输入框不能输入只能选择的方法

时间区间开始: <input type="text" id = "first_time" name="first_time" value="${first_time }" onFocus = "WdatePicker({maxDate:'#F{$dp.$D(\'last_time\')||\'%y-%M-%d\'}',dateFmt:'yyyy-MM-dd'})"> 时间区间结束: <in

Airbnb react-dates 支持对过去时间的选择

react项目里的时间组件来自 airbnb 的 react-dates ,但这个组件默认选择范围是从当前时间往后. 即,假设今天是2018年1月30日,在这之前的日期我都无法选择. 下图灰色的部分都是不能选中的. 查看 storybook 寻找某个能开启选择过去日期的属性 一开始我是懵的,DateRangePickerWrapper 从哪来的怎么 import 的 ?isOutsideRange 属性接受的是一个匿名函数,那我要传什么样的匿名函数给你?? 经过试验,我发现,不需要 import

自定义日历(四)-区间选择控件

目录 一.概述 二.效果展示 三.整体结构 四.分析实现 1.QPickDate 2.QDatePanel 3.QDateWidget.QDateContent 4. 调度绘制 五.相关文章 原文链接:自定义日历(四)-区间选择控件 一.概述 很早很早以前,写过几篇关于日历的文章,不同于Qt原生的控件,这些控件都是博主使用自绘的方式进行完成,因此可定制性更强一些,感兴趣的可以参考自定义日历(一).自定义日历(二)和自定义日历(三)). 本篇文章还是继续来写我们的日历控件,仍然采用自绘的方式,带来

jquery UI datepicker 添加时间的选择。

仅有日期的原始效果图: 支持时间选择的目标效果图: 第一步:引入几个重要的jquery UI 文件,其中zh-CN.js是支持中文的 <script href="Js/Jquery/jquery.js"/><script/> <script href="Js/jqueryui/jquery.ui.js"/><script/> <script href="Js/jqueryui/i18n/zh-CN.js

Sql server 查询指定时间区间工作日数、休息日数等日期操作

1.查询指定时间区间的工作日 这个主要难点是法定节假日,国家的法定节假日每年都不一样,还涉及到调休,所以我们设计一个假日表.主要字段有年份,类型(是否调休),假期日期.如下: CREATE TABLE [dbo].[Holidays]( [ID] [int] IDENTITY(1,1) NOT NULL, [Holiday] [datetime2](7) NULL,--假期日期 [YearS] [char](4) NULL,--年份 [daytype] [int] NULL--类型 ) 添加好当

Mysql 建表时,日期时间类型选择

mysql(5.5)所支持的日期时间类型有:DATETIME. TIMESTAMP.DATE.TIME.YEAR. 几种类型比较如下: 日期时间类型 占用空间 日期格式 最小值 最大值 零值表示  DATETIME  8 bytes  YYYY-MM-DD HH:MM:SS  1000-01-01 00:00:00 9999-12-31 23:59:59 0000-00-00 00:00:00  TIMESTAMP  4 bytes  YYYY-MM-DD HH:MM:SS  197001010

hdoj 2883 kebab 【时间区间离散化 + 最大流】

kebab Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1273    Accepted Submission(s): 532 Problem Description Almost everyone likes kebabs nowadays (Here a kebab means pieces of meat grilled on

获取指定时间区间作业运行情况

背景:数据库服务器定期重启,想知道重启期间对作业的影响.通俗点就是服务器在重启这段时间,有哪些作业计划要运行,重启后是否要手动执行这些作业?第一次重启的时候,按照最笨的方式,把所有作业看一遍,然后人为判断有哪些作业将受到影响,再根据作业具体代码,确定是否需手动执行.后来老大说要弄个过程出来,通过传入起止时间参数,返回区间内的作业计划.PS:参考各类资料,修改过很多遍,最后成型在6月初,很多细节上的修改自己也记不清楚了,一直懒得整理.先放上代码,以及效果图. 1 /****************

HDU 3572 【最大流 &amp;&amp; 时间区间建图】

Task Schedule Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 5398    Accepted Submission(s): 1742 Problem Description Our geometry princess XMM has stoped her study in computational geometry t