datetimepicker日曆設置mindate

用datetimepicker之前最好先看看自己用的是哪個datetimepicker,免得出現下面這種悲劇

http://stackoverflow.com/questions/22500662/bootstrap-3-datetimepicker-events-not-firing-up

 

在於我來說,就沒分清startdate和mindate,enddate和maxdate

最新的已經是後者

 

使用例

http://eonasdan.github.io/bootstrap-datetimepicker/

 

<script type="text/javascript">
    $(function () {
        $('#datetimepicker6').datetimepicker();
        $('#datetimepicker7').datetimepicker({
            useCurrent: false //Important! See issue #1075
        });
        $("#datetimepicker6").on("dp.change", function (e) {
            $('#datetimepicker7').data("DateTimePicker").minDate(e.date);
        });
        $("#datetimepicker7").on("dp.change", function (e) {
            $('#datetimepicker6').data("DateTimePicker").maxDate(e.date);
        });
    });
</script>

 

這次卡在了useCurrent上,因爲如果不寫這條設置,在設置datetimepicker7的minDate的時候,會將datetimepicker7的值從空白更新成now,觸發第2個方法的change,然後會給datetimepicker6設置maxdate爲now,導致datetimepicker6無法選擇now以後的日期,類似於死循環

 

插件源碼如下

if (options.useCurrent && !options.keepInvalid && date.isBefore(minDate)) {
                setValue(options.minDate);
            }

 

所以,demo裏也給出瞭解決方法,設置useCurrent爲false

 

       $('#datetimepicker7').datetimepicker({
            useCurrent: false //Important! See issue #1075
        });

 或者

$('#datetimepicker7').data("DateTimePicker").useCurrent(false);

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章