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支持firefox,ie7页面布局拖拽效果代码
Dec 20 Javascript
基于jQuery的消息提示插件 DivAlert之旅(二)
Apr 01 Javascript
关于JavaScript与HTML的交互事件
Apr 12 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
Sep 06 Javascript
javascript动态向网页中添加表格实现代码
Feb 19 Javascript
JavaScript避免代码的重复执行经验技巧分享
Apr 17 Javascript
JS+CSS实现下拉列表框美化效果(3款)
Aug 15 Javascript
Boostrap基础教程之JavaScript插件篇
Sep 08 Javascript
JS 验证密码 不能为空,必须含有数字、字母、特殊字符,长度在8-12位
Jun 21 Javascript
vue-router实现组件间的跳转(参数传递)
Nov 07 Javascript
一篇文章,教你学会Vue CLI 插件开发
Apr 17 Javascript
微信小程序云开发如何使用npm安装依赖
May 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
phpcms模块开发之swfupload的使用介绍
2013/04/28 PHP
php使用smtp发送支持附件的邮件示例
2014/04/13 PHP
CI映射(加载)数据到view层的方法
2016/03/28 PHP
Zend Framework基于Command命令行建立ZF项目的方法
2017/02/18 PHP
PHP simplexml_load_string()函数实例讲解
2019/02/03 PHP
记Laravel调用Gin接口调用formData上传文件的实现方法
2019/12/12 PHP
js数值和和字符串进行转换时可以对不同进制进行操作
2014/03/05 Javascript
JS实现简单路由器功能的方法
2015/05/27 Javascript
快速获取/设置iframe内对象元素的几种js实现方法
2016/05/20 Javascript
AngularJS实现用户登录状态判断的方法(Model添加拦截过滤器,路由增加限制)
2016/12/12 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
简单实现vue验证码60秒倒计时功能
2017/10/11 Javascript
React中使用UEditor百度富文本的方法
2018/08/22 Javascript
浅谈js闭包理解
2019/04/01 Javascript
koa2+vue实现登陆及登录状态判断
2019/08/15 Javascript
JavaScript JSON数据处理全集(小结)
2019/08/15 Javascript
vue 在服务器端直接修改请求的接口地址
2020/12/19 Vue.js
Python之PyUnit单元测试实例
2014/10/11 Python
python的文件操作方法汇总
2017/11/10 Python
Python实现简单网页图片抓取完整代码实例
2017/12/15 Python
Python实现简单http服务器
2018/04/12 Python
Django框架模板的使用方法示例
2019/05/25 Python
PyCharm安装Markdown插件的两种方法
2019/06/24 Python
python实现异常信息堆栈输出到日志文件
2019/12/26 Python
python读取hdfs上的parquet文件方式
2020/06/06 Python
推荐WEB开发者最佳HTML5和CSS3代码生成器
2015/11/24 HTML / CSS
新西兰便宜隐形眼镜购买网站:QUICKLENS New Zealand
2019/03/02 全球购物
法国高保真音响和家庭影院商店:Son Video
2019/04/26 全球购物
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
乌克兰网上珠宝商店:GoldSoveren
2020/03/31 全球购物
生物化工工艺专业应届生求职信
2013/10/08 职场文书
自我推荐书
2013/12/04 职场文书
幼儿园教师工作感言
2014/02/15 职场文书
学校国庆节活动总结
2015/03/23 职场文书
嘉年华活动新闻稿
2015/07/17 职场文书
2015初中政教处工作总结
2015/07/21 职场文书