如何为 flatpickr 元素添加 onKeyDown 事件?

How to add onKeyDown event for a flatpickr element?

我想为页面中的 flatpickr 元素添加 onKeyDown 事件。 目前我有以下代码,但这不起作用。该事件没有被解雇。感谢任何帮助。

const dob = flatpickr('#date_of_birth', {
    allowInput: true,
    altInput: true,
    altFormat: "m-d-Y",
    dateFormat: "m-d-Y",
    wrap: true,
});

window.onload = function() {
    if(dob) {
        dob.config.onKeyDown.push(function(selectedDates, dateStr, instance) {
            console.log("Date Value: " + dateStr); // not printed
        });
    }
}

编辑:我在我的应用程序中使用 Flatpickr 作为 Vue 组件。

最后我能够使用以下代码获得 onKeyDown 事件:

const dob = flatpickr('#date_of_birth', {
    allowInput: true,
    altInput: true,
    altFormat: "m-d-Y",
    dateFormat: "m-d-Y",
    wrap: true,
    onKeyDown: (selectedDates, dateStr, instance, event) => {
        if(event.keyCode != 8) {
            var ele = document.activeElement;
            var val = ele.value;
              
            if (val.length == 2 || val.length == 5) {
                val += '-';
            }

            ele.value = val;
            ele.dispatchEvent(new Event('input'));
          }
    },
});

希望它对以后的人有所帮助。