我正在使用 Flatpicker,我想禁用过去的时间,这就是我目前所拥有的

问题描述 投票:0回答:1
var timewsd = document.getElementById("current_datetime").value ;
            var currentdate = "";





            let roundDate = (date = new Date(timewsd), roundToMinutes = 60) => {
                const ms = 1000 * 60 * roundToMinutes;
                return new Date(Math.ceil(date.getTime() / ms) * ms);
            };

            var current_time = new Date(timewsd).getHours()+":"+new Date(timewsd).getMinutes();

            const date = new Date(timewsd);

            // if(current_time > '16:30'){
            //     currentdate =  setDate(timewsd.getDate() + 1);
            // }else{
            //     currentdate = document.getElementById("current_datetime").value;
            // }



            $("#kt_datepicker_2").flatpickr({
                minDate: "today",
                minuteIncrement: 1,
                enableTime: true,
                minTime :current_time
            });

但是,当选择未来日期时,未来日期的时间也限制为当前时间。

https://flatpickr.js.org/examples/

php jquery laravel datetimepicker
1个回答
0
投票

不要使用

minDate: "today"
,而是将其替换为
minDate: new Date()
,并删除
minTime
,您将获得所需的输出。

下面我提供了一个实例供大家参考。

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
</head>
<body>
    <h1>Select a Date and Time</h1>
    <input type="text" id="datepicker" placeholder="Select date and time">
    
    <script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
    <script>
        flatpickr("#datepicker", {
            enableTime: true,
            minuteIncrement: 1,
            minDate: new Date()
        })
    </script>
</body>
</html>

© www.soinside.com 2019 - 2024. All rights reserved.