jQuery UI Datepicker,如何使用 'oo' 日期格式使文本框可通过键盘编辑?

jQuery UI Datepicker, How can I make the text box editable by keyboard using the 'oo' dateformat?

我使用的日期选择器格式为年份的前导零日。 我的用户还希望能够使用他们的键盘输入一年中的第几天(“012”、“034”、“356”)。使用日期选择器日期格式代码 'oo',无法通过键盘输入文本...但您可以使用删除键和退格键将其删除。

这是我的代码:

$( '#dateFieldID' ).datepicker({ dateFormat: 'oo' });

它在从动画框中选择日期时按预期格式化日期字段,但不允许从键盘输入文本。 任何帮助将不胜感激。

我发现日期选择器的默认设置是将输入限制在已实现的日期选择器格式允许的范围内。对于我的问题,唯一允许的字符输入是 'oo'。 (那是两个小写字母'O'。)

参见:http://api.jqueryui.com/datepicker/#option-constrainInput

虽然这有助于系统识别特定的 Julian 风格日期格式,但它限制了允许的输入,这并不好。

通过将 constrainInput 选项的值更改为 'false',然后我们可以添加数字并在需要时对其进行验证。

这里是设置了允许数字的选项的代码:

$( '#dateFieldID' ).datepicker({ constrainInput: false, dateFormat: 'oo' });