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 相关文章推荐
异步加载script的代码
Jan 12 Javascript
Javascript的时间戳和php的时间戳转换注意事项
Apr 12 Javascript
jquery 快速回到页首的方法
Dec 05 Javascript
按下Enter焦点移至下一个控件的实现js代码
Dec 11 Javascript
setTimeout()与setInterval()方法区别介绍
Dec 24 Javascript
jQuery插件datatables使用教程
Apr 21 Javascript
vue.js+boostrap项目实践(案例详解)
Sep 21 Javascript
详解Bootstrap各式各样的按钮(推荐)
Dec 13 Javascript
vue-router 导航钩子的具体使用方法
Aug 31 Javascript
基于vue配置axios的方法步骤
Nov 09 Javascript
记一次Vue.js混入mixin的使用(分权限管理页面)
Apr 17 Javascript
JavaScript中0、空字符串、'0'是true还是false的知识点分享
Sep 16 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的access操作类
2008/04/09 PHP
PHP+XML 制作简单的留言本 图文教程
2009/11/02 PHP
PHP中根据IP地址判断城市实现城市切换或跳转代码
2012/09/04 PHP
PHP学习笔记 IIS7下安装配置php环境
2012/10/29 PHP
PHP将MySQL的查询结果转换为数组并用where拼接的示例
2016/05/13 PHP
laravel5.5添加echarts实现画图功能的方法
2019/10/09 PHP
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
js动态设置鼠标事件示例代码
2013/10/30 Javascript
javascript生成随机大小写字母的方法
2014/02/20 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
2015/08/14 Javascript
AngularJS使用ngMessages进行表单验证
2015/12/27 Javascript
JQuery用户名校验的具体实现
2016/03/18 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
JS实现的抛物线运动效果示例
2018/01/30 Javascript
JS从非数组对象转数组的方法小结
2018/03/26 Javascript
JavaScript实现动态添加、移除元素或属性的方法分析
2019/01/03 Javascript
Vue-CLI 3.X 部署项目至生产服务器的方法
2019/03/22 Javascript
Vue+Express实现登录状态权限验证的示例代码
2019/05/05 Javascript
Vue实现购物车的全选、单选、显示商品价格代码实例
2019/05/06 Javascript
jQuery实现简单弹幕效果
2019/11/28 jQuery
详解实现vue的数据响应式原理
2021/01/20 Vue.js
[01:03:27]NAVI vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python正则表达式介绍
2012/08/06 Python
Python中转换角度为弧度的radians()方法
2015/05/18 Python
python 读取文件并替换字段的实例
2018/07/12 Python
Python两台电脑实现TCP通信的方法示例
2019/05/06 Python
Python如何操作office实现自动化及win32com.client的运用
2020/04/01 Python
HTML5 离线应用之打造零请求、无流量网站的解决方法
2013/04/25 HTML / CSS
html5页面结构_动力节点Java学院整理
2017/07/10 HTML / CSS
触摸春天教学反思
2014/02/03 职场文书
老龄工作先进事迹
2014/08/15 职场文书
党在我心中的演讲稿
2014/09/13 职场文书
母亲节寄语大全
2015/02/27 职场文书
结婚通知短信怎么写
2015/04/17 职场文书
婚礼男方父母答谢词
2015/09/29 职场文书
幼儿园开学家长寄语(2016秋季)
2015/12/03 职场文书