繁体   English   中英

Daterangepicker - 强制只允许输入更改的日期

[英]Daterangepicker - force to allow only date on input change

我需要这样做:只允许 daterangepicker 文本输入以接受正确的日期(例如:当您选择13-01-2020然后单击输入并开始输入18时,您会得到18-01-2020 instead of 1813-01-2020当然不允许使用非数字......我希望这很清楚)。

Js Fiddle is here: https://jsfiddle.net/20z5qym9/

到目前为止我的自定义代码:

<script type="text/javascript" src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css" />
    
<script>
    $(function() {
      $('input[name="data_u"]').daterangepicker({
        singleDatePicker: true,
        showDropdowns: true,
        oneTap: true,
        minYear: 1901,
        maxYear: 2022,
                                      
        "locale": {
            "format": "DD-MM-YYYY",
            "separator": " - ",
            "applyLabel": "OK",
            "cancelLabel": "Leave",
            "fromLabel": "From",
            "toLabel": "To",
            "customRangeLabel": "Custom",
            //custimizable list od days
            "daysOfWeek": [
                "Pn",
                "Wt",
                "Śr",
                "Czw",
                "Pt",
                "So",
                "Nd"
            ],
            //and months
            "monthNames": [
                "Styczeń",
                "Luty",
                "Marzec",
                "Kwiecień",
                "Maj",
                "Czerwiec",
                "Lipiec",
                "Sierpień",
                "Wrzesień",
                "Październik",
                "Listopad",
                "Grudzień"
            ],
            "firstDay": 0
        }
      
      }
      
      , function(start, end, label) {
        //callback when you choose month, but I would need to have callback on every key pressed I guess
      });
    });
</script>   

<input type='date' />

这就是我现在的做法。 工作正常,但并不完美(本地化设置由浏览器控制,这意味着用户,这意味着他可以有不同的日期格式、日期选择器行为等)。

有趣的是,我不知道,浏览器从现在开始就有这种类型的输入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM