0

作为标题,我在项目中实现了两个 datePicker,我的目标是第二个 datePicker 不能选择在第一个 datePicker 中选择的日期之前的日期。

代码:

    <div class="col-md-4">
    <form name="NOME_FORM" method="post" action="registra_campagne.php" class="text-center border border-light p-5" onsubmit="return validateForm()">
    <p class="h4 mb-4">Durata Campagna</p>
    <div class="md-form">
    <!--The "from" Date Picker -->
    <input name="data_inizio" placeholder="Data inizio" type="text" id="date-picker-example" class="form-control datepicker">
    <label for="date-picker-example">Inizio</label>

    </div>
    <div class="md-form">
    <!--The "to" Date Picker -->
    <input name="data_fine" placeholder="Data Fine" type="text" id="date-picker-example2" class="form-control datepicker">
    <label for="date-picker-example2">Fine</label>
    </div>
    <input class="btn btn-info btn-block" name="submit" type="submit" value="Aggiungi"><br>
    </form>
    </div>
    <script type="text/javascript">




    // Data Picker Initialization
    $('.datepicker').pickadate({
    min : new Date(),
    onClose: function(){
    $('#date-picker-example2').pickadate({
    min : $('.datepicker').val()
    })
    }
    });


    $('.datepicker').pickadate({
    // Escape any “rule” characters with an exclamation mark (!).
    format: 'yyyy/mm/dd',
    formatSubmit: 'Y/m/d',
    hiddenPrefix: 'prefix__',
    hiddenSuffix: '__suffix'
    })


    $('.datepicker').pickadate({
    closeOnSelect: false,
    closeOnClear: false

    });
    $('#input_starttime').pickatime({
    twelvehour: true

    });
    $('#input_endtime').pickatime({
    darktheme: true,
    twelvehour: false

    });
    </script> 

我将非常感激,因为到目前为止,唯一实现的功能是使用 datePicker 的用户无法选择当前日期之前的日期

4

1 回答 1

0

我不高兴浏览日期选择器的文档。这不是很容易理解,但日期选择器本身做得很好,仍然胜过任何原生替代品。

他是您需要设置的内容和一些额外的提示:

$("#date2").datepicker({ // initialization, you pass an option object to the datepicker function
changeMonth: true,          // with this you can change months on click

changeYear: true,            //  change year on click

yearRange: "1930:2018",       // your year range , this is what you need
showAnim: "slide",            // give the datpicker calendary UI an animation
onSelect: calcDiff,           // here you can pass you own callback functions, this is mine, you do not need this
onClose: move,                 // another of my own

minDate: null,                 // do not set this if you want to limit the range
maxDate: null                   // do not set this
});

您只需要选项对象中的 yearRange: "1930:2018" 即可。

你可以看看这个,上面是一个 datepicker 实例,下面是非常糟糕的 HTML/JS 实现

https://codepen.io/damPop/pen/oayEdg?editors=0010

好的,这是另一个更短的代码笔:

https://codepen.io/damPop/pen/vQbprR?editors=1010

第 8 行设置了第一个 datepicker 实例的范围,yearRange:“1990:2010”。

在第 28 行,您对第二个输入元素 yearRange: "1991:2010" 执行相同操作

于 2018-12-01T20:05:27.803 回答