bootstrap daterangepicker汉化以及扩展功能


Posted in Javascript onJune 15, 2017

bootstrap daterangepicker使用介绍,具体如下

一、扩展的功能

     1、初始化时,会自动创建一个select标签;

     2、当改变select值时,日期也会自动改变,并且会调用apply按钮的click事件

     3、点击此处进行预览

     4、github地址:https://github.com/lanleiming/daterangepicker-extend

二、效果展示

bootstrap daterangepicker汉化以及扩展功能

三、使用方法

1、替换掉原先的 daterangepicker.js 文件。
2、调用方法和原先一样。 $('#config-demo').daterangepicker();

四、代码实现

/* 扩展该组件:增加一个select */
  var _this = this;

  var selectItem = '<select id="dateranepicker_select" class="form-control width150 inline-block">';
  selectItem += '<option>今日</option>';
  selectItem += '<option>昨日</option>';
  selectItem += '<option selected="selected">最近7日</option>';
  selectItem += '<option>最近15日</option>';
  selectItem += '<option>最近30日</option>';
  selectItem += '<option>本月</option>';
  selectItem += '<option>上月</option>';
  selectItem += '</select>';

  this.element.parent().append(selectItem);

  $(document).on('change','#dateranepicker_select',function(){

   function auto0(num){
    return num>10?num:'0'+num;
   }

   var val = $(this).val();
   var c_start_date = new Date();
   var c_end_date = new Date();
   if(val=='今日'){

   }
   else if(val=='昨日'){
    c_start_date.setDate(c_start_date.getDate()-1);
    c_end_date.setDate(c_end_date.getDate()-1);
   }
   else if(val=='最近7日'){
    c_start_date.setDate(c_start_date.getDate()-7);
    c_end_date.setDate(c_end_date.getDate()-1);
   }
   else if(val=='最近15日'){
    c_start_date.setDate(c_start_date.getDate()-15);
    c_end_date.setDate(c_end_date.getDate()-1);
   }
   else if(val=='最近30日'){
    c_start_date.setDate(c_start_date.getDate()-30);
    c_end_date.setDate(c_end_date.getDate()-1);
   }
   else if(val=='本月'){
    var cyear = c_start_date.getFullYear();
    var cmonth = c_start_date.getMonth();

    c_start_date = new Date(cyear,cmonth,1);
    c_end_date =new Date(cyear+'-'+ (cmonth+1) +'-'+new Date(cyear,cmonth+1,0).getDate());

   }
   else if(val=='上月'){
    var cyear = c_start_date.getFullYear();
    var cmonth = c_start_date.getMonth()-1;
    c_start_date = new Date(cyear,cmonth,1);
    c_end_date =new Date(cyear+'-'+ (cmonth+1) +'-'+new Date(cyear,cmonth+1,0).getDate());
   }
   _this.setStartDate(c_start_date);
   _this.setEndDate(c_end_date);

   timespanStr =auto0(c_start_date.getMonth()+1)+'/'+ auto0(c_start_date.getDate()) + '/'+c_start_date.getFullYear()+'-'+ auto0(c_end_date.getMonth()+1) + '/' +auto0(c_end_date.getDate()) + '/' +c_end_date.getFullYear();

   _this.element.val(timespanStr);
   _this.hide();
   _this.element.trigger('apply.daterangepicker', _this);
   /* 扩展该组件 end */


  });

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

Javascript 相关文章推荐
javascript setTimeout和setInterval计时的区别详解
Jun 21 Javascript
JS 两个字符串时间的天数差计算
Aug 25 Javascript
javascript中动态函数用法实例分析
May 14 Javascript
基于MVC4+EasyUI的Web开发框架形成之旅之界面控件的使用
Dec 16 Javascript
基于Turn.js 实现翻书效果实例解析
Jun 20 Javascript
详解jQuery的Cookie插件
Nov 23 Javascript
解析利用javascript如何判断一个数为素数
Dec 08 Javascript
react-native android状态栏的实现
Jun 15 Javascript
详解Node.js读写中文内容文件操作
Oct 10 Javascript
JavaScript实现的鼠标跟随特效示例【2则实例】
Dec 22 Javascript
vue 引用自定义ttf、otf、在线字体的方法
May 09 Javascript
小程序接口的promise化的实现方法
Dec 11 Javascript
validationEngine 表单验证插件使用实例代码
Jun 15 #Javascript
JS 设置Cookie 有效期 检测cookie
Jun 15 #Javascript
详解react如何在组件中获取路由参数
Jun 15 #Javascript
react-router JS 控制路由跳转实例
Jun 15 #Javascript
Vue路由跳转问题记录详解
Jun 15 #Javascript
JS奇技之利用scroll来监听resize详解
Jun 15 #Javascript
package.json文件配置详解
Jun 15 #Javascript
You might like
php自动给文章加关键词链接的函数代码
2012/11/29 PHP
php通过curl模拟登陆DZ论坛
2015/05/11 PHP
PHP调试的强悍利器之PHPDBG
2016/02/22 PHP
javascript 二进制运算技巧解析
2012/11/27 Javascript
javascript实现五星评分功能
2015/11/10 Javascript
基于jQuery实现响应式圆形图片轮播特效
2015/11/25 Javascript
javascript实现平滑无缝滚动
2020/08/09 Javascript
js判断iframe中元素是否存在的实现代码
2016/12/24 Javascript
Iscrool下拉刷新功能实现方法(推荐)
2017/06/26 Javascript
Vue.js如何实现路由懒加载浅析
2017/08/14 Javascript
简单谈谈CommonsChunkPlugin抽取公共模块
2017/12/31 Javascript
JS点击动态添加标签、删除指定标签的代码
2018/04/18 Javascript
angularJS实现不同视图同步刷新详解
2018/10/09 Javascript
Vue商品控件与购物车联动效果的实例代码
2019/07/21 Javascript
[02:42]DOTA2英雄基础教程 杰奇洛
2013/12/23 DOTA
[04:41]2014DOTA2国际邀请赛 Liquid顺利突围晋级正赛
2014/07/09 DOTA
[04:04]DOTA2亚洲邀请赛比赛场馆&酒店全攻略
2017/03/23 DOTA
Python操作SQLite数据库的方法详解
2017/06/16 Python
python对离散变量的one-hot编码方法
2018/07/11 Python
Python openpyxl 遍历所有sheet 查找特定字符串的方法
2018/12/10 Python
Python测试模块doctest使用解析
2019/08/10 Python
快速解决docker-py api版本不兼容的问题
2019/08/30 Python
Django restframework 框架认证、权限、限流用法示例
2019/12/21 Python
python3.6环境下安装freetype库和基本使用方法(推荐)
2020/05/10 Python
Python检测端口IP字符串是否合法
2020/06/05 Python
工程力学硕士生的自我评价范文
2013/11/16 职场文书
法学专业自我鉴定
2014/02/05 职场文书
简历中的自我评价范文
2014/02/05 职场文书
财务情况说明书范文
2014/05/06 职场文书
个人买房协议书范本
2014/10/06 职场文书
2015年世界艾滋病日活动总结
2015/03/24 职场文书
自主招生推荐信格式模板
2015/03/24 职场文书
python控制台打印log输出重复的解决方法
2021/05/14 Python
厉害!这是Redis可视化工具最全的横向评测
2021/07/15 Redis
生命的关键成分来自太空?陨石说是的
2022/04/29 数码科技
nginx设置资源请求目录的方式详解
2022/05/30 Servers