4

我想禁用使用引导程序 datetimepicker 选择几个小时,因为我只想选择从上午 8:00 到晚上 19​​:00 的时间。

我什么也找不到。你能帮助我吗?

4

6 回答 6

7

这应该有效:

$(".datepicker").datetimepicker({
    hoursDisabled: '0,1,2,3,4,5,6,7,18,19,20,21,22,23'
});

还有这个:

    hoursDisabled: [0, 1, 2, 3, 4, 5, 6, 7, 8, 18, 19, 20, 21, 22, 23]

因为在 bootstrap-datetimepicker.js 中:

    setHoursDisabled: function (hoursDisabled) {
        this.hoursDisabled = hoursDisabled || [];
        if (!$.isArray(this.hoursDisabled)) {
            this.hoursDisabled = this.hoursDisabled.split(/,\s*/);
        }
        ...
    },
于 2015-07-02T10:35:18.633 回答
1

这对我有用:

$(".datepicker").datetimepicker({
    enabledHours:[8,9,10,11,12,13,14,15,16,17,18,19]
});

于 2020-05-25T13:09:07.220 回答
0

bootstrap-datetimepicker.js文件中,禁用时间定义如下;

var hoursDisabled = this.hoursDisabled || [];

如果您只在一个地方使用日期和时间,您可以简单地将其更改[][0, 1, 2, 3, 4, 5, 6, 7, 8, 18, 19, 20, 21, 22, 23]在原始 javascript 文件中。但是如果你在多个地方使用日期和时间,最好在你的 html 文件或单独的 js 文件中更改禁用时间。这是代码;

<script type="text/javascript">
$('.form_datetime').datetimepicker('setHoursDisabled', [0, 1, 2, 3, 4, 5, 6, 7, 8, 18, 19, 20, 21, 22, 23]);
</script>
于 2017-05-01T09:07:31.130 回答
0

执行此操作的最佳方法.....

$(".datepicker").datetimepicker({ enabledHours:[8,9,10,11,12,13,14,15,16,17,18,19,20,21,22] });

于 2020-07-06T09:57:32.617 回答
0

尝试这个。您可以禁用 HourInterval

$(function () {
            $('#time1').datetimepicker({
                format: 'HH:mm:ss',
                pickDate: false,
                minuteStepping:30,
                pickTime: true,
                autoclose: true,
                defaultDate: new Date(1979, 0, 1, 8, 0, 0, 0),
                //this is what you will need!
                disabledTimeIntervals: [[moment({ h: 0 }), moment({ h: 8 })], [moment({ h: 18 }), moment({ h: 20 })]],
                //hoursDisabled: '0,1,2,3,4,5,6,7,21,22,23',//Not Working!!
                //hoursDisabled: [00, 01, 02, 03, 04, 05, 06, 07, 21, 22, 23],//Not Working!!
                language:'en',
            });
        });

更多选项: https ://eonasdan.github.io/bootstrap-datetimepicker/Options/

于 2020-10-06T20:26:22.623 回答
0

上面发布的解决方案实际上并没有起作用,但这适用于每次浏览:

<input type="text" id="deliverydate" name="deliverydate" autocomplete="off" required="">
<script src="../js/calendar/jquery.datetimepicker.full.js"></script>
<script type="text/javascript">
$('#deliverydate').datetimepicker({
    format:'Y-m-d H:i',
    allowTimes:['11:00','12:00','13:00','14:00','15:00','16:00','17:00','18:00','19:00', '20:00','21:00','22:00','23:00'], 
    minDate:0
});
</script>

这会禁止选择以前的日期并限制时间选择,并且已经在实时网站和不同浏览器上进行了测试。

于 2021-03-08T19:57:10.787 回答