jeDate日期控件在项目中实际应用

简介: jeDate日期控件在项目中实际应用

需求:

1:可提供日期不超过当前日期或者(验证选中日期是否超过今天)

2:日期验证

3:input表格里面获取当前系统默认日期

4:选着日期点击选中后点确定按钮才关闭

5:验证结束日期大于开始日期


<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no">
        <title> </title>
        <link type="text/css" rel="stylesheet" href="jeDate-gh-pages/test/jeDate-test.css">
        <link type="text/css" rel="stylesheet" href="jeDate-gh-pages/skin/jedate.css">
        <script type="text/javascript" src="jeDate-gh-pages/src/jedate.js"></script>
        <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
    </head>
    <body>
        <input type="text" class="form-control input-medium" placeholder="开始时间" id="startTime" />
        <input type="text" class="form-control input-medium" placeholder="结束时间" id="endTime" />
        <button type="submit" id="btnsearch">搜索</button>
    </body>
    <script type="text/javascript">
        //可提供日期不超过当前日期
            Date.prototype.format = function(format) {
            var o = {
                "M+" : this.getMonth() + 1, // month
                "d+" : this.getDate(), // day
                "h+" : this.getHours(), // hour
                "m+" : this.getMinutes(), // minute
                "s+" : this.getSeconds(), // second
                "q+" : Math.floor((this.getMonth() + 3) / 3), // quarter
                "S" : this.getMilliseconds()
            // millisecond
            };
            if (/(y+)/.test(format)) {
                format = format.replace(RegExp.$1, (this.getFullYear() + "")
                        .substr(4 - RegExp.$1.length));
            }
            for ( var k in o) {
                if (new RegExp("(" + k + ")").test(format)) {
                    format = format.replace(RegExp.$1,
                            RegExp.$1.length == 1 ? o[k] : ("00" + o[k])
                                    .substr(("" + o[k]).length));
                }
            }
            return format;
        };
        var nowt = new Date().format("yyyy-MM-dd");
        //选中后点确定按钮才关闭
        jeDate("#startTime", {
            onClose : true,
            theme : {
                bgcolor : "#00A1CB",
                color : "#ffffff",
                pnColor : "#00CCFF"
            },
            format : 'YYYY-MM-DD hh:mm:ss',
            maxDate : nowt
        });
        jeDate("#endTime", {
            onClose : true,
            theme : {
                bgcolor : "#00A1CB",
                color : "#ffffff",
                pnColor : "#00CCFF"
            },
            format : 'YYYY-MM-DD hh:mm:ss',
            maxDate : nowt
        });
        //默认input是系统当前时间选择
        var mydateInput = document.getElementById("startTime");
        var date = new Date();
        /*  date.setMonth(date.getMonth()-1); */
        var dateString = date.getFullYear() + "-" + (date.getMonth() + 1) + "-"
                + date.getDate() + "  " + "8:00:00";
        mydateInput.value = dateString;
        var mydateInputs = document.getElementById("endTime");
        var dates = new Date();
        var dateStrings = dates.getFullYear() + "-" + (dates.getMonth() + 1)
                + "-" + dates.getDate() + "  " + "18:00:00";
        mydateInputs.value = dateStrings;
        // 点击事件
        $("#btnsearch").click(function() {
            if(validate()) {
                return;
            }
        })
        // 验证年月
        function validate(numb) {
            if($("#startTime").val() == '') {
                alert("开始日期不可为空");
                return true;
            }
            if(diffDate($("#startTime").val()) == 0) {
                alert("开始日期不能超过当前日期");
                return true;
            }
            if($("#endTime").val() == '') {
                alert("结束日期不可为空");
                return true;
            }
            if(diffDate($("#endTime").val()) == 0) {
                alert("结束日期不能超过当前日期");
                return true;
            }
            if(validateDate($("#startTime").val(), $("#endTime").val())) {
                alert('结束日期不得小于开始日期')
                return true;
            }
            return false;
        }
        // 验证选中日期是否超过今天(和可提供日期不超过当前日期查不多需求)
        function diffDate(evalue) {
            var date = new Date(Date.parse(evalue.replace(/-/g, "/")));
            if(new Date() >= date) {
                return 1;
            }
            return 0;
        }
        // 验证结束日期大于开始日期
        function validateDate(beginTime, endTime) {
            var bd = new Date(Date.parse(beginTime));
            var ed = new Date(Date.parse(endTime));
            return bd > ed;
        }
    </script>
</html>
相关文章
|
2月前
elementui实现表格单选功能
elementui实现表格单选功能
12 0
|
6月前
|
JavaScript
Uniapp实现时间选择器
Uniapp实现时间选择器
139 0
|
3月前
|
开发框架 移动开发 JavaScript
uniapp时间选择器
uniapp时间选择器
45 0
|
5月前
|
JavaScript
uniapp实现时间选择器
uniapp实现时间选择器
|
5月前
|
JavaScript 前端开发 容器
js使用表格生成一个日历,点击按钮上查看上个月,点击按钮下,查看下个月,月份,年份
js使用表格生成一个日历,点击按钮上查看上个月,点击按钮下,查看下个月,月份,年份
61 0
uniapp下拉弹层选择框效果demo(整理)
uniapp下拉弹层选择框效果demo(整理)
|
10月前
|
移动开发 JavaScript 前端开发
项目中遇到的bug:elementui走马灯
大家应该都知道当走马灯轮播前两张图片和后两张图片的轮播方向和后面图片的方向不一致,就很尴尬。在网上查阅了好多博客基本都是手动添加两张图片,比如:[1,2]改成[2,1,2,1]。在项目中我们显然不可能把数据写死,这是不现实的。
|
JSON 前端开发 JavaScript
使用antd表格组件实现日程表
使用antd表格组件实现日程表
使用antd表格组件实现日程表