无法在momentjs中选择minDate

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无法在momentjs中选择minDate相关的知识,希望对你有一定的参考价值。

我正在使用日期选择器让用户选择过去和今天之间100天之间的日期。它工作正常,但是有一个我无法解决的问题。显然,minDate是计算出来的,并正确地应用到了选择器中。超过100天的日期显示为灰色且无法选择。问题在于,第一个可用日期(以黑色显示)也不可选。当指针悬停在这样的日期上时,它会正确地变成一只手,但是在单击时,选择器将关闭并显示当前日期。所有其他日期(从倒数第二个开始)都可以正常工作。

<!--Campo de fecha-->
    <div class="form-group" <?php echo $mostrarDiv; ?>>
        <div>
            <label for="fecha" class="etiquetaDeCampo"><span class="fas fa-calendar-day"></span> Selecciona la fecha del suceso:</label>
            <div class="msgError" id="errorFecha">
                <p>Selecciona la fecha.</p>
            </div>
        </div>
        <?php
            if(isset($_SESSION['fecha']) && $_SESSION['fecha'] != "")
                $fecha = $_SESSION['fecha'];
             else 
                $fecha = "";
            
            $fecha = 'value="'.$fecha.'"';
        ?>
        <div class="input-group date" id="datetimepicker" data-target-input="nearest">
                                                
                <input type="text" name="fecha" id="fecha" class="form-control datetimepicker-input campoDeDatos" data-toggle="datetimepicker" data-target="#datetimepicker" <?php echo $fecha; ?>/>
                <div class="input-group-append" data-target="#datetimepicker" data-toggle="datetimepicker">
                    <div class="input-group-text"><i class="fa fa-calendar"></i></div>
                </div>
            
        </div>
    </div>
<script type="text/javascript">
    $(function () 
        var dateFormat = "DD-MM-YYYY";
        var CurrDate = new Date();
        var limitePasado = new Date();
        limitePasado.setDate(limitePasado.getDate() - 100);

        dateCurr = moment(CurrDate, dateFormat);
        $('#datetimepicker').datetimepicker(
            format: 'DD-MMM-YYYY',
            locale: 'es',
            defaultDate: CurrDate,
            showToday: true,
            maxDate: dateCurr,
            minDate: limitePasado,
        );
    );
</script>
<!--Fin de fecha-->
答案
 var CurrDate = moment();
    var limitePasado = moment().subtract(1, "days");

使用此

以上是关于无法在momentjs中选择minDate的主要内容,如果未能解决你的问题,请参考以下文章

根据第一个更改第二个日期选择器的 minDate

无法在 Angular js datepicker 中设置 minDate 和 MaxDate

设置 minDate 以防止在开始日期之前选择结束日期

minDate:0,不在datepicker中工作

DataTimePicker 怎样设置可以不能选择当前日期之后的时间

minDate 没有被设置?