bootstrap日期插件daterangepicker使用详解


Posted in Javascript onOctober 19, 2017

今天用的了bootstrap日期插件感觉搜索的资料不是很多在此写下一些使用的心得:
插件开源地址:daterangepicker日期控件,
插件使用只要按照开源中的文档信息来就好先包括以下引用:

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="moment.js"></script>
<script type="text/javascript" src="daterangepicker.js"></script>
<link rel="stylesheet" type="text/css" href="bootstrap.css" />
<link rel="stylesheet" type="text/css" href="daterangepicker-bs3.css" />

包含对jquery,bootstrap框架的引用,以及日期处理用的moment.js,最后加载上这个插件的js和css文件
然后和大部分jq插件一样,该插件也是对$.fn的扩展所以进行以下的操作来使用这个控件

<script type="text/javascript">
$(document).ready(function() {
 $('input[name="daterange"]').daterangepicker();
});
</script>

用jq获取到你要插入的那个元素然后运行daterangepicker函数就能使用它默认的样式和属性了,
不过光有这个肯定是不行的,daterangepicker函数可以接受一个参数对象和一个回调函数,如下:

$('input[name="daterange"]').daterangepicker(
 { 
  format: 'YYYY-MM-DD',
  startDate: '2013-01-01',
  endDate: '2013-12-31'
 },
 function(start, end, label) {
  alert('A date range was chosen: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD'));
 }
);

回调函数会在日期更改之后触发有三个参数,开始时间,结束时间以及标签名,可以在这里执行你要进行的操作如ajax请求

以上就可以构建一个英文版的日期控件了

bootstrap日期插件daterangepicker使用详解

接下来着重介绍一下locale和ranges两个参数

首先是locale这个参数locale是构建本地语言应用的重要参数(github上说locale接受对象参数,不过并没有说明对象的属性)

以下是插件中locale默认属性

{ 
applyLabel: ‘Apply', 
cancelLabel: ‘Cancel', 
fromLabel: ‘From', 
toLabel: ‘To', 
weekLabel: ‘W', 
customRangeLabel: ‘Custom Range', 
daysOfWeek: moment.weekdaysMin(), 
monthNames: moment.monthsShort(), 
firstDay: moment.localeData()._week.dow };

我们只有更改这些参数就能够使这个插件变成中文的插件

$('input[name=datetime]').daterangepicker({ 
    format: 'YYYY-MM-DD',
    startDate: '2013-01-01',
    endDate: new Date(),
    maxDate:new Date(),
    locale:{
      applyLabel: '确认',
      cancelLabel: '取消',
      fromLabel: '从',
      toLabel: '到',
      weekLabel: 'W',
      customRangeLabel: 'Custom Range',
      daysOfWeek:["日","一","二","三","四","五","六"],
      monthNames: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],
    }
  }, function (start, end, label) {
    alert('A date range was chosen: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD'));
  });

效果如下:

bootstrap日期插件daterangepicker使用详解

当然你可能也许想实现github中的那个效果,想加个添加时间的快捷键:
Improvely.com
没问题可以使用range参数实现:
range参数也是对象参数{name:[start,end] name是快捷键的名称,接受一个数组分别是时间的开始和结束

$('input[name=datetime]').daterangepicker({ 
  format: 'YYYY-MM-DD',
  startDate: '2013-01-01',
  endDate: new Date(),
  maxDate:new Date(),
  locale:{
   applyLabel: '确认',
   cancelLabel: '取消',
   fromLabel: '从',
   toLabel: '到',
   weekLabel: 'W',
   customRangeLabel: '选择时间',
   daysOfWeek:["日","一","二","三","四","五","六"],
   monthNames: ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],
  },
  range: {
   "近期": ['2015-04-12',new Date()]
  }
 }, function (start, end, label) {
  alert('A date range was chosen: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD'));
 });

效果如下:

bootstrap日期插件daterangepicker使用详解

这样就有了一个中文的日期插件了,当然还有其他的参数可以使用包括添加自己的class用来敷写bootstrap的样式来实现自己想要的样式,也可以使用单选时间框函数来实现,具体的大家可以仔细查看官方的文档来构建自己需要的时间选取控件。

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

Javascript 相关文章推荐
Javascript调用XML制作连动下拉列表框
Jun 25 Javascript
用于自动添加Digg This!按钮的JavaScript
Dec 23 Javascript
CSS JavaScript 实现菜单功能 改进版
Dec 09 Javascript
jQuery 使用手册(二)
Sep 23 Javascript
angularjs 处理多个异步请求方法汇总
Jan 06 Javascript
jQuery中prevUntil()方法用法实例
Jan 08 Javascript
jQuery插件pagewalkthrough实现引导页效果
Jul 05 Javascript
jQuery监听浏览器窗口大小的变化实例
Feb 07 Javascript
解决v-for中使用v-if或者v-bind:class失效的问题
Sep 25 Javascript
Javascript之高级数组API的使用实例
Mar 08 Javascript
微信小程序的引导页实现代码
Jun 24 Javascript
JavaScript大数相加相乘的实现方法实例
Oct 18 Javascript
微信小程序的生命周期的详解
Oct 19 #Javascript
python爬取安居客二手房网站数据(实例讲解)
Oct 19 #Javascript
js 两个日期比较相差多少天的实例
Oct 19 #Javascript
Angular弹出模态框的两种方式
Oct 19 #Javascript
vue使用axios跨域请求数据问题详解
Oct 18 #Javascript
JS实现按钮颜色切换效果
Sep 05 #Javascript
JS实现元素上下左右移动效果
Oct 18 #Javascript
You might like
window+nginx+php环境配置 附配置搭配说明
2010/12/29 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
PHP Reflection API详解
2015/05/12 PHP
Laravel5.5 手动分页和自定义分页样式的简单实现
2019/10/15 PHP
为javascript添加String.Format方法
2020/08/11 Javascript
Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
2013/06/17 Javascript
代码触发js事件(click、change)示例应用
2013/12/13 Javascript
Javascript 遍历页面text控件详解
2014/01/06 Javascript
JavaScript及jquey实现多个数组的合并操作
2014/09/06 Javascript
jQuery判断对象是否存在的方法
2015/02/05 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
2015/08/27 Javascript
跟我学习javascript创建对象(类)的8种方法
2015/11/20 Javascript
基于jQuery实现以手风琴方式展开和折叠导航菜单
2016/01/28 Javascript
Angular发布1.5正式版,专注于向Angular 2的过渡
2016/02/18 Javascript
手机Web APP如何实现分享多平台功能
2016/08/19 Javascript
探究JavaScript中的五种事件处理程序方式
2016/12/07 Javascript
浅谈Webpack 是如何加载模块的
2018/05/24 Javascript
详解express使用vue-router的history踩坑
2019/06/05 Javascript
layui 根据后台数据动态创建下拉框并同时默认选中的实例
2019/09/02 Javascript
vue 自动化路由实现代码
2019/09/03 Javascript
JavaScript闭包原理与用法学习笔记
2020/05/29 Javascript
微信小程序实现购物车功能
2020/11/18 Javascript
Python编程入门之Hello World的三种实现方式
2015/11/13 Python
详解使用python的logging模块在stdout输出的两种方法
2017/05/17 Python
深入浅析python with语句简介
2018/04/11 Python
python获取指定日期范围内的每一天,每个月,每季度的方法
2019/08/08 Python
Python 面向对象之封装、继承、多态操作实例分析
2019/11/21 Python
Python turtle画图库&amp;&amp;画姓名实例
2020/01/19 Python
Python如何批量获取文件夹的大小并保存
2020/03/31 Python
聊聊python中的循环遍历
2020/09/07 Python
python 获取字典键值对的实现
2020/11/12 Python
美国棒球装备和用品商店:Baseball Savings
2018/06/09 全球购物
家长给学校的建议书
2014/05/15 职场文书
2014年质量工作总结
2014/11/22 职场文书
图书借阅制度范本
2015/08/06 职场文书
Python echarts实现数据可视化实例详解
2022/03/03 Python