Flatpickr在IE 11中手动输入年份后关闭

时间:2018-08-13 11:48:29

标签: javascript jquery flatpickr

请在以下问题上帮助我。

我们使用以下代码初始化flatpickr:

var flatPickrs = $('#' + datePickerId + ' .localized').flatpickr({
locale : {
    "firstDayOfWeek" : firstDayOfWeek,
    weekdays : {
        "shorthand" : datePickerWeekdaysShorthandArray,
        "longhand" : datePickerWeekdaysLonghandArray
    },
    months : {
        "shorthand" : datePickerMonthsShorthandArray,
        "longhand" : datePickerMonthsLonghandArray
    }

},
"dateFormat" : "m/d/Y",
"allowInput" : true,
"altFormat" : datePickerFormat,
"altInput" : true,
"defaultDate" : defaultDateValue,
"minDate" : minDateValue,
"maxDate" : maxDateValue

});

在flatPickr自动关闭后,我们在“年份”输入字段中手动输入了四位数的年份。

所以我经历了flatPickr代码库,并观察到以下代码导致了问题:

function onYearInput(event) {
    var year = parseInt(event.target.value) + (event.delta || 0);
    if (year.toString().length === 4 || event.key === "Enter") {
        self.currentYearElement.blur();
        if (!/[^\d]/.test(year.toString()))
            changeYear(year);
    }
}

根据代码,输入4位数字时触发模糊事件。我希望由于模糊事件而关闭了flatPickr。

注意:如果我们注释以下行代码,则flatPickr在输入四位数的年份后不关闭。

self.currentYearElement.blur();

请告诉我是否有办法阻止该事件或其他替代解决方案?

0 个答案:

没有答案