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 - HTML的request类
Jan 09 Javascript
Javascript面向对象之四 继承
Feb 08 Javascript
仿猪八戒网左下角的文字滚动效果
Oct 28 Javascript
浅谈Javascript中深复制
Dec 01 Javascript
JQuery实现简单的服务器轮询效果实例
Mar 31 Javascript
angular.js4使用 RxJS 处理多个 Http 请求
Sep 23 Javascript
基于Vue2.X的路由和钩子函数详解
Feb 09 Javascript
vue搜索和vue模糊搜索代码实例
May 07 Javascript
AntV F2和vue-cli构建移动端可视化视图过程详解
Oct 08 Javascript
小程序外卖订单界面的示例代码
Dec 30 Javascript
Vue的过滤器你真了解吗
Feb 24 Vue.js
Vue Element plus使用方法梳理
Dec 24 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
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口
2007/04/18 PHP
php使用filter过滤器验证邮箱 ipv6地址 url验证
2013/12/25 PHP
浅析PHP程序设计中的MVC编程思想
2014/07/28 PHP
PHP+Mysql基于事务处理实现转账功能的方法
2015/07/08 PHP
codeigniter实现get分页的方法
2015/07/10 PHP
yii2-GridView在开发中常用的功能及技巧总结
2017/01/07 PHP
php7 安装yar 生成docker镜像
2017/05/09 PHP
PHP实现数组转JSon和JSon转数组的方法示例
2018/06/14 PHP
PHP pthreads v3下同步处理synchronized用法示例
2020/02/21 PHP
javascript removeChild 使用注意事项
2009/04/11 Javascript
javascript-表格排序(降序/反序)实现介绍(附图)
2013/05/30 Javascript
Javascript/Jquery——简单定时器的多种实现方法
2013/07/03 Javascript
使用js检测浏览器是否支持html5中的video标签的方法
2014/03/12 Javascript
jQuery左侧大图右侧小图焦点图幻灯切换代码分享
2015/08/19 Javascript
React Native实现简单的登录功能(推荐)
2016/09/19 Javascript
基于Layer+jQuery的自定义弹框
2020/05/26 Javascript
JS异步文件上传(兼容IE8+)
2017/04/02 Javascript
jQuery实现获取table中鼠标click点击位置行号与列号的方法
2017/10/09 jQuery
微信小程序实现换肤功能
2018/03/14 Javascript
Vue源码解析之Template转化为AST的实现方法
2018/12/14 Javascript
详解vue中移动端自适应方案
2019/05/05 Javascript
node.js中事件触发器events的使用方法实例分析
2019/11/23 Javascript
TypeScript之调用栈的实现
2019/12/31 Javascript
Fiddler如何抓取手机APP数据包
2016/01/22 Python
TensorFlow高效读取数据的方法示例
2018/02/06 Python
django如何自己创建一个中间件
2019/07/24 Python
python 解决flask uwsgi 获取不到全局变量的问题
2019/12/22 Python
瑞士香水购物网站:Parfumcity.ch
2017/01/14 全球购物
Brookstone美国官网:独特新奇产品
2017/03/04 全球购物
Nordgreen台湾官网:极简北欧设计手表
2019/08/21 全球购物
Internal修饰符有什么含义
2013/07/10 面试题
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
ktv周年庆活动方案
2014/08/18 职场文书
大学生简短的自我评价
2014/09/12 职场文书
高中生综合素质评价范文
2015/08/18 职场文书
关于html选择框创建占位符的问题
2021/06/09 HTML / CSS