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 各浏览器的 Javascript 效率对比
Jan 23 Javascript
js改变文章字体大小的实例代码
Nov 27 Javascript
JavaScript表单验证实例之验证表单项是否为空
Jan 10 Javascript
jQuery插件ajaxfileupload.js实现上传文件
Oct 23 Javascript
浅谈JS之tagNaem和nodeName
Sep 13 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
Sep 23 Javascript
javascript中mouseenter与mouseover的异同
Jun 06 Javascript
JavaScript中运算符规则和隐式类型转换示例详解
Sep 06 Javascript
element-ui 上传图片后清空图片显示的实例
Sep 04 Javascript
antd组件Upload实现自己上传的实现示例
Dec 18 Javascript
js基础之事件捕获与冒泡原理
Oct 09 Javascript
vue中父子组件的参数传递和应用示例
Jan 04 Vue.js
微信小程序的生命周期的详解
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
php实现jQuery扩展函数
2009/10/30 PHP
php mssql扩展SQL查询中文字段名解决方法
2012/10/15 PHP
PHP数组生成XML格式数据的封装类实例
2016/11/10 PHP
Javascript中的数学函数集合
2007/05/08 Javascript
jQuery操作checkbox选择(list/table)
2013/04/07 Javascript
js防止DIV布局滚动时闪动的解决方法
2014/10/30 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
Sea.JS知识总结
2016/05/05 Javascript
jquery 动态合并单元格的实现方法
2016/08/26 Javascript
Bootstrap select实现下拉框多选效果
2016/12/23 Javascript
javascript简单链式调用案例分析
2017/05/10 Javascript
koa2实现登录注册功能的示例代码
2018/12/03 Javascript
JS实现点击按钮随机生成可拖动的不同颜色块示例
2019/01/30 Javascript
jQuery实现二级导航菜单的示例
2020/09/30 jQuery
最基础的Python的socket编程入门教程
2015/04/23 Python
Django中更新多个对象数据与删除对象的方法
2015/07/17 Python
简单解析Django框架中的表单验证
2015/07/17 Python
Ubuntu16.04/树莓派Python3+opencv配置教程(分享)
2018/04/02 Python
Scrapy基于selenium结合爬取淘宝的实例讲解
2018/06/13 Python
python3 kmp 字符串匹配的方法
2018/07/07 Python
Python中常用的内置方法
2019/01/28 Python
浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式
2020/05/25 Python
详解Python利用configparser对配置文件进行读写操作
2020/11/03 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
2021/01/08 Python
css3学习系列之移动属性详解
2017/07/04 HTML / CSS
严选全球尖货,立足香港:Bonpont宝盆
2018/07/24 全球购物
Camper鞋西班牙官方网上商店:西班牙马略卡岛的鞋类品牌
2019/03/14 全球购物
食品厂厂长岗位职责
2014/01/30 职场文书
2014年小学植树节活动方案
2014/03/02 职场文书
世博会口号
2014/06/20 职场文书
十佳家长事迹材料
2014/08/26 职场文书
新闻发布会活动策划方案
2014/09/15 职场文书
奖学金感谢信
2015/01/21 职场文书
PHP实现创建以太坊钱包转账等功能
2021/04/21 PHP
详解JSON.parse和JSON.stringify用法
2022/02/18 Javascript
2021好看的国漫排行榜前十名 《完美世界》上榜,《元龙》排名第一
2022/03/18 国漫