日期和时间选择器:DateTime Picker

日期和时间选择器:DateTime Picker

一、概述

  1. 下载:
    http://www.malot.fr/bootstrap-datetimepicker/
  2. 指南:
    http://www.malot.fr/bootstrap-datetimepicker/demo.php
  3. 导入css、js
<link href="css/bootstrap-datetimepicker.min.css" rel="stylesheet">
<link href="css/bootstrap.min.css" rel="stylesheet">

<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="js/bootstrap-datetimepicker.zh-CN.js"></script>
  1. 基础案例一
<input type="text" id="form-date">
<script type="text/javascript"> $("#form-date").datetimepicker(); </script>
  1. 基础案例二
<input type="text" id="form-date">
<script type="text/javascript"> $("#form-date").datetimepicker({  format:'yyyy-mm-dd',//日期格式,默认值:'mm / dd / yyyy' language:'zh-CN',//中文,默认值:'en' minView: 'month',//datetimepicker应该显示的最低视图,默认值:0,'hour' autoclose:true//是否在选择日期后立即关闭datetimipicker,默认值:false }); </script>
  1. 日期格式(format属性)
    p:子午线(“am”或“pm”) – 根据区域设置文件
    P:子午线大写(“AM”或“PM”) – 根据区域设置文件
    s:没有前导零的秒
    ss:秒,带前导零的2位数字
    i:没有前导零的时间
    ii:分钟,带前导零的2位数字
    h:小时无前导零 – 24小时格式
    hh:小时,2位数字带前导零 – 24小时格式
    H:小时无前导零 – 12小时格式
    HH:小时,2位数字带前导零 – 12小时格式
    d:没有前导零的月份的日子
    dd:月的日期,带前导零的2位数字
    m:没有前导零的月份的数字表示
    mm:月的数字表示,带前导零的2位数字
    M:一个月的短文本表示,三个字母
    MM:一个月的全文表示,例如1月或3月
    yy:一年的两位数表示
    yyyy:全年数字表示,4位数字
  2. 可用视图:
    0或“hour”
    1天或“day”为天视图
    2或“month”视图(默认)
    3年或“year”为12个月概述
    4年或“decade”的10年概览。适用于生日的datetimepickers
  3. 其他属性:
    1)weekStart:星期几开始。0(星期日)至6(星期六),默认值:0
    2)startDate:可能选择的最早日期; 所有较早的日期将被禁用。默认值:开始时间
    3)endDate:可能选择的最后日期; 所有以后的日期将被禁用。默认值:结束时间
    4)daysOfWeekDisabled:应禁用的星期几。值为0(星期日)至6(星期六)。多个值应以逗号分隔。示例:禁用周末:‘0,6’或[0,6]。默认值:’’,[]
    5)startView:datetimepicker在打开时应该显示的视图。默认值:2,‘month’
    6)maxView:datetimepicker应该显示的最高视图。默认值:4,‘decade’
    7)todayBtn:如果为true或“linked”,则在datetimimaker底部显示“Today”按钮,以选择当前日期。如果为真,“Today”按钮将仅将当前日期移动到视图中; 如果“链接”,当前日期也将被选中。默认值:false
    8)todayHighlight:如果为真,则突出显示当前日期。默认值:false
    9)keyboardNavigation:是否允许通过箭头键导航日期。默认值:true
    10)forceParse:是否在选择器关闭时强制解析输入值。也就是说,当用户在输入字段中留下无效日期时,选择器将强制解析该值,并将输入的值设置为符合给定值的新的有效日期。默认值:true
    11)minuteStep:用于构建小时视图的增量。每minuteStep分钟创建一个预设。默认值:5
    12)pickerPosition:此选项目前仅在组件实现中可用。使用它,您可以将选择器放在输入字段的下方。默认值:‘bottom-right’ (支持其他值:‘bottom-left’)
    13)viewSelect:使用此选项,您可以选择将从中选择日期的视图。默认情况下是最后一个,但是您可以选择第一个,因此在每次点击时都会更新日期。Default: (supported values are: ‘decade’, ‘year’, ‘month’, ‘day’, ‘hour’)
    14)showMeridian:此选项将对于day和hour视图启用子视图。默认值:false
    15)initialDate:您可以使用日期初始化查看器。默认是现在,所以你可以指定昨天或今天在午夜…。默认值:new Date()
  4. 基础案例三:组件
    1)需要先在WebContent目录下添加fonts文件夹,添加glyphicon字体
    2)
<div class="form-horizontal" style="margin-top:20px;">     
<label class="col-md-1 control-label">组件:</label>
<div id="datetimepicker" class="input-group date col-md-2" data-date-format="yyyy-mm-dd" data-link-field="dtp_input1">
	<input class="form-control" size="16" type="text" value="" readonly >
	<span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>
	<span class="input-group-addon"><span class="glyphicon glyphicon-th"></span></span>
</div>
<input type="hidden" id="dtp_input1" value="" /><br/>
</div>
3)
<script>
	$("#datetimepicker").datetimepicker({ 
		language:'zh-CN',
		minView:'month',
		autoclose:true
	});
</script>
  1. 基础案例三:讲解过程
    1)输入框组:向基于文本的输入框添加作为前缀和后缀的文本或按钮
    a)把前缀或后缀元素放在一个带有 class .input-group 的 <div> 中。
<div class="input-group">
	<input type="text" class="form-control">
</div>

b)接着,在相同的

内,在 class 为 .input-group-addon 的 内放置额外的内容。

<span class="input-group-addon">$</span>

c)把该 放置在 元素的前面或者后面。

<div class="input-group">
	<span class="input-group-addon">$</span>
	<input type="text" class="form-control">
	<span class="input-group-addon">.00</span>
</div>

2)引用glyphicon字体

<span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>
<span class="input-group-addon"><span class="glyphicon glyphicon-th"></span></span>

3)添加只读属性

<input type="text" class="form-control" readonly>

4)添加js

<script>
	$("#datetimepicker").datetimepicker({ 
		language:'zh-CN',
		minView:'month',
		autoclose:true
	});
</script>

5)在div中添加.date 样式

<div id="datetimepicker" class="input-group date col-md-2" >

6)在div中添加data-date-format属性,也可以用js设置(format:‘yyyy-mm-dd’)

<div id="datetimepicker" class="input-group date col-md-2" data-date-format="yyyy-mm-dd">

7)div中的data-date属性,相当于js中的initialDate属性
8)镜像输入元素(在每个更新事件上,使用特定的日期格式更新辅助字段)
a)在div中添加属性data-link-field=“dtp_input1”,其属性值为另外一个文本框元素的id

<div data-link-field="dtp_input1" id="datetimepicker" class="input-group date col-md-2" data-date-format="yyyy-mm-dd">

b)添加另外的表单元素

<input type="hidden" id="dtp_input1" value="" />
  1. 事件触发案例:
$("#datetimepicker2").datetimepicker({ 
		format:'yyyy-mm-dd',
		language:'zh-CN',
		minView:'month',
		autoclose:true,
		startDate:new Date()
	}).on("hide",function(){ //当日期选择器被隐藏时触发。
		alert("控件被隐藏");
	}).on("changeDate",function(){ //当日期更改时触发
		alert("日期被改变");
	}).on("outOfRange",function(){ //当超出设定的日期范围时触发
		alert("日期超出范围");
	});

源代码下载地址:

https://download.csdn.net/download/pcbhyy/10764792

源代码目录结构:

  1. bootstrap-datetimepicker-master.zip:源文件
  2. bootstrap_datetimepicker_demo:自己编写的案例项目
    原文作者:老实先生
    原文地址: https://blog.csdn.net/pcbhyy/article/details/83744328
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞