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 相关文章推荐
JS获取整个页面文档的实现代码
Dec 15 Javascript
JavaScript 参数中的数组展开 [译]
Sep 21 Javascript
HTML Color Picker(js拾色器效果)
Aug 27 Javascript
jquery.fastLiveFilter.js实现输入自动过滤的方法
Aug 11 Javascript
js实现的万能flv网页播放器代码
Apr 30 Javascript
详解Backbone.js框架中的模型Model与其集合collection
May 05 Javascript
jQuery实现模拟flash头像裁切上传功能示例
Dec 11 Javascript
ES6学习教程之块级作用域详解
Oct 09 Javascript
vue项目中v-model父子组件通信的实现详解
Dec 10 Javascript
基于Vue的延迟加载插件vue-view-lazy
May 21 Javascript
通过jquery的ajax请求本地的json文件方法
Aug 08 jQuery
vue+animation实现翻页动画
Jun 29 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安装为Apache DSO
2006/10/09 PHP
PHP函数utf8转gb2312编码
2006/12/21 PHP
php Smarty模板生成html文档的方法
2010/04/12 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
JavaScript 利用StringBuffer类提升+=拼接字符串效率
2009/11/24 Javascript
js禁止页面复制功能禁用页面右键菜单示例代码
2013/08/29 Javascript
javascript父、子页面交互技巧总结
2014/08/08 Javascript
jQuery插件pagination实现分页特效
2015/04/12 Javascript
浅谈javascript中return语句
2015/07/15 Javascript
js实现文字垂直滚动和鼠标悬停效果
2015/12/31 Javascript
详解vue-router 2.0 常用基础知识点之router-link
2017/05/10 Javascript
JavaScript脚本语言是什么_动力节点Java学院整理
2017/06/26 Javascript
Javascript之图片的延迟加载的实例详解
2017/07/24 Javascript
基于vue配置axios的方法步骤
2017/11/09 Javascript
深入理解ES6中let和闭包
2018/02/22 Javascript
layer弹出的iframe层在执行完毕后关闭当前弹出层的方法
2018/08/17 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
微信小程序 checkbox使用实例解析
2019/09/09 Javascript
[33:19]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第一场 11.26
2020/11/30 DOTA
进一步了解Python中的XML 工具
2015/04/13 Python
Python cookbook(数据结构与算法)根据字段将记录分组操作示例
2018/03/19 Python
python 模拟创建seafile 目录操作示例
2019/09/26 Python
Python实现图片识别加翻译功能
2019/12/26 Python
Python 给下载文件显示进度条和下载时间的实现
2020/04/02 Python
python matplotlib.pyplot.plot()参数用法
2020/04/14 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
2020/09/21 Python
在线实验室测试:HealthLabs.com
2020/05/03 全球购物
车间工艺员岗位职责
2013/12/09 职场文书
中学生社会实践活动总结
2014/07/03 职场文书
2015年助残日活动总结
2015/03/27 职场文书
二审答辩状范文
2015/05/22 职场文书
2016入党积极分子心得体会
2016/01/06 职场文书
公安干警正风肃纪心得体会
2016/01/15 职场文书
python使用glob检索文件的操作
2021/05/20 Python
Java实现简易的分词器功能
2021/06/15 Java/Android
vue-treeselect的基本用法以及解决点击无法出现拉下菜单
2022/04/30 Vue.js