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 字符串连接性能优化
Dec 20 Javascript
用js做一个小游戏平台 (一)
Dec 29 Javascript
Jquery 选中表格一列并对表格排序实现原理
Dec 15 Javascript
String.prototype实现的一些javascript函数介绍
Nov 22 Javascript
使用JavaScript实现网页版Pongo设计思路及源代码分享
Jun 16 Javascript
javascript的tab切换原理与效果实现方法
Jan 10 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
Oct 11 Javascript
vue深入解析之render function code详解
Jul 18 Javascript
微信小程序中进行地图导航功能的实现方法
Jun 29 Javascript
layDate日期控件使用方法详解
Nov 15 Javascript
深入分析jQuery.one() 函数
Jun 03 jQuery
vue响应式原理与双向数据的深入解析
Jun 04 Vue.js
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 microtime获取浮点的时间戳
2010/02/21 PHP
Zend的MVC机制使用分析(二)
2013/05/02 PHP
php preg_replace替换实例讲解
2013/11/04 PHP
PHP如何读取由JavaScript设置的Cookie
2017/03/22 PHP
prototype.js的Ajax对象
2006/09/23 Javascript
js资料prototype 属性
2007/03/13 Javascript
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
无阻塞加载脚本分析[全]
2011/01/20 Javascript
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
浏览器打开层自动缓慢展开收缩实例代码
2013/07/04 Javascript
纯js分页代码(简洁实用)
2013/11/05 Javascript
jquery实现textarea输入框限制字数的方法
2015/01/15 Javascript
完美实现仿QQ空间评论回复特效
2015/05/06 Javascript
学习使用jquery iScroll.js移动端滚动条插件
2020/03/24 Javascript
jQuery中的each()详细介绍(推荐)
2016/05/25 Javascript
jQuery获取元素父节点的方法
2016/06/21 Javascript
JS常用函数和常用技巧小结
2016/10/15 Javascript
5 种JavaScript编码规范
2018/01/30 Javascript
通过jquery.cookie.js实现记住用户名、密码登录功能
2018/06/20 jQuery
Centos7 安装Node.js10以上版本的方法步骤
2019/10/15 Javascript
js 计数排序的实现示例(升级版)
2020/01/12 Javascript
[54:24]Optic vs TNC 2018国际邀请赛小组赛BO2 第二场
2018/08/18 DOTA
详解Python装饰器
2019/03/25 Python
Python3中函数参数传递方式实例详解
2019/05/05 Python
Python Web版语音合成实例详解
2019/07/16 Python
python模拟预测一下新型冠状病毒肺炎的数据
2020/02/01 Python
python和php学习哪个更有发展
2020/06/17 Python
Tensorflow全局设置可见GPU编号操作
2020/06/30 Python
Python RabbitMQ实现简单的进程间通信示例
2020/07/02 Python
宿舍使用违章电器检讨书
2014/01/12 职场文书
环境工程专业自荐信范文
2014/03/18 职场文书
自强之星事迹材料
2014/05/12 职场文书
大学生求职信
2014/06/17 职场文书
公安局负责人查摆问题及整改方案
2014/09/27 职场文书
2014年驾驶员工作总结
2014/11/18 职场文书
监护人证明
2015/06/19 职场文书