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函数
Aug 01 Javascript
JavaScript 无符号右移赋值操作
Apr 17 Javascript
js模拟C#中List的简单实例
Mar 06 Javascript
c#+jquery实现获取radio和checkbox的值
Sep 12 Javascript
jQuery实现加入购物车飞入动画效果
Mar 14 Javascript
JQuery选中checkbox方法代码实例(全选、反选、全不选)
Apr 27 Javascript
学习JavaScript设计模式之状态模式
Jan 08 Javascript
JavaScript中利用jQuery绑定事件的几种方式小结
Mar 06 Javascript
Javascript基础_嵌入图像的简单实现
Jun 14 Javascript
axios向后台传递数组作为参数的方法
Aug 11 Javascript
解决layui使用layui-icon出现默认图标的问题
Sep 11 Javascript
详解vue中在循环中使用@mouseenter 和 @mouseleave事件闪烁问题解决方法
Apr 07 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 或网站服务器日志,并正确配置 PHP 安装(win+linux)
2012/05/05 PHP
php比较多维数组中值的大小排序实现代码
2012/09/08 PHP
Yii框架中memcache用法实例
2014/12/03 PHP
PHP curl伪造IP地址和header信息代码实例
2015/04/27 PHP
JavaScript 动态创建VML的方法
2009/10/14 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
2010/11/14 Javascript
Javascript引用指针使用介绍
2012/11/07 Javascript
javascript检查浏览器是否支持flash的实现代码
2014/08/14 Javascript
JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
2014/09/13 Javascript
浅谈Javascript中深复制
2014/12/01 Javascript
NodeJS学习笔记之Connect中间件模块(一)
2015/01/27 NodeJs
jQuery结合ajax实现动态加载文本内容
2015/05/19 Javascript
jquery 表单验证之通过 class验证表单不为空
2015/11/02 Javascript
AngularJS基础 ng-mouseenter 指令示例代码
2016/08/02 Javascript
微信小程序 限制1M的瘦身技巧与方法详解
2017/01/06 Javascript
js轮播图透明度切换(带上下页和底部圆点切换)
2017/04/27 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
JavaScript实现简单的树形菜单效果
2017/06/23 Javascript
基于vue.js路由参数的实例讲解——简单易懂
2017/09/07 Javascript
详解如何用模块化的方式写vuejs
2017/12/16 Javascript
Vue在页面数据渲染完成之后的调用方法
2018/09/11 Javascript
深入理解Node内建模块和对象
2019/03/12 Javascript
[45:25]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
Python协程的用法和例子详解
2017/09/09 Python
Django处理文件上传File Uploads的实例
2018/05/28 Python
python将一个英文语句以单词为单位逆序排放的方法
2018/12/20 Python
对python3 sort sorted 函数的应用详解
2019/06/27 Python
Python 私有化操作实例分析
2019/11/21 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
Python通过yagmail实现发送邮件代码解析
2020/10/27 Python
计算机网络工程专业职业生涯规划书
2014/03/10 职场文书
安全环保演讲稿
2014/08/28 职场文书
关于运动会的广播稿
2014/09/22 职场文书
研究生就业推荐表导师评语
2014/12/31 职场文书
公文写作:新员工转正申请书范本3篇!
2019/08/07 职场文书
WordPress多语言翻译插件 - WPML使用教程
2021/04/01 PHP