bootstrap-datetimepicker 的使用

最近项目的后台管理系统需要一个按时间查询的需求,前端需要一个日期的选择器,度娘之后选择了bootstrap-datetimepicker日期选择控件。
bootstrap日期时间选择器下载地址和文档

在使用的过程中主要遇到了两个问题

  1. 插件内容默认是英文没有中文
  2. 就是一个最基础的需求,开始的日期不能晚于结束的日期,结束的日期不能早于开始的日期。

首先解决第一个没有默认是英文的问题,修改文件中JS目录下的JS文件手动添加cn中文选项

然后在初始化中language中配置cn

var dates = $.fn.datetimepicker.dates = {  
   en: {  
     days:        ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],  
     daysShort:   ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],  
     daysMin:     ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'],  
     months:      ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],  
     monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],  
     meridiem:    ['am', 'pm'],  
     suffix:      ['st', 'nd', 'rd', 'th'],  
     today:       'Today',  
     clear:       'Clear'  
   },  
   cn : {  
        days: ["周日", "周一", "周二", "周三", "周四", "周五", "周六", "周日"],  
        daysShort: ["日", "一", "二", "三", "四", "五", "六", "七"],  
        daysMin: ["日", "一", "二", "三", "四", "五", "六", "七"],  
        months: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],  
        monthsShort: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],  
        meridiem:    ['am', 'pm'],  
        suffix:      ['st', 'nd', 'rd', 'th'],  
        today: "今天",  
        clear: "清除"  
   }  
 }; 

第二个问题就是日期选择的限制了,直接粘代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <title>Document</title>
    <script src="./node_modules/jquery/dist/jquery.min.js"></script>
    <link rel="stylesheet" type="text/css" href="./node_modules/bootstrap/dist/css/bootstrap.css">
    <script src="./node_modules/bootstrap/dist/js/bootstrap.js"></script>
    <link rel="stylesheet" type="text/css" href="./node_modules/bootstrap-datetimepicker-master/css/bootstrap-datetimepicker.min.css">
    <script src="./node_modules/bootstrap-datetimepicker-master/js/bootstrap-datetimepicker.min.js"></script>
</head>

<body>
    <div class="row">
        <div class='col-sm-6'>
            <div class="form-group">
                <label>选择开始日期:</label>
                <!--指定 date标记-->
                <div class='input-group date' id='date_start'>
                    <input type='text' class="form-control" readonly="readonly" />
                    <span class="input-group-addon">  
                        <span class="glyphicon glyphicon-calendar"></span>
                    </span>
                </div>
            </div>
        </div>
        <div class='col-sm-6'>
            <div class="form-group">
                <label>选择结束时间:</label>
                <!--指定 date标记-->
                <div class='input-group date' id='date_end'>
                    <input type='text' class="form-control" readonly="readonly" />
                    <span class="input-group-addon">  
                        <span class="glyphicon glyphicon-calendar"></span>
                    </span>
                </div>
            </div>
        </div>
    </div>
</body>

</html>
<script>
$(function() {
    $('#date_start').datetimepicker({
        format: 'yyyy-mm-dd',
        weekStart: 1,
        language: 'cn',
        minView: 'month',
        autoclose: true,
        todayBtn: true,
        endDate: new Date(),
    }).on("changeDate", function(ev) {
        if (ev.date) {
            $('#date_end').datetimepicker('setStartDate', new Date(ev.date.valueOf()))
        } else {
            $('#date_end').datetimepicker('setStartDate', );
        }
    });

    $('#date_end').datetimepicker({
        format: 'yyyy-mm-dd',
        weekStart: 1,
        language: 'cn',
        minView: 'month',
        autoclose: true,
        endDate: new Date(),
    }).on("changeDate", function(ev) {
        if (ev.date) {
            $('#date_start').datetimepicker('setEndDate', new Date(ev.date.valueOf()))
        } else {
            $('#date_start').datetimepicker('setEndDate', new Date());
        }
    });
});
</script>

NPM的配置,直接粘过去就好~

{
  "name": "kkkoko",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "bootstrap": "^3.3.5",
    "jquery": "^2.2.4",
  }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,833评论 19 139
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,414评论 4 61
  • 埃斯比约(Esbjerg)位于丹麦日德兰半岛的西南部,是丹麦第五大城市及最大的渔港,濒临北海,拥有日德兰半岛唯一的...
    慕溪北欧旅游阅读 5,152评论 0 0
  • 前段时间看的《为孩子朗读》,里面有些内容是我自己第一次听的,也是没有实践过。其中的一点就是在朗读的过程中可以和孩子...
    田金平阅读 1,337评论 0 0
  • Class 操作 作者:曾庆林 设置和切换class addClass() 添加class hasClass() ...
    轻思维阅读 2,523评论 0 1

友情链接更多精彩内容