我正在努力为jQuery datepicker的优势和Ruby on Rails的慢性日期解析器提供一个很好的组合。
jQuery UI日期选择器对于直观地选择日期非常有用。但我也希望用户能够以他们选择的任何格式输入日期,并让Chronic库处理输入。
我有一个文本输入字段,我附加了日期选择器,日期选择功能很有用。但我还想要的是,如果用户忽略了日期选择器,只是键入“上周二”并点击进入,我想提交'上周二'并让慢性解析到2011-10-18。但是发生的事情是文本框值被日期选择器中的当前日期替换。
似乎应该有一个选项,允许日期选择器作为帮助者,而不是唯一的输入源。但我找不到禁用此功能的方法。
更新:
我只是通过按下按钮显示日历,而不是在焦点上显示日历,但是,即使您已经显示日期选择器,如果您输入一些文本并点击,它似乎也是错误的输入,被日期选择日期覆盖!
$('.dl_input_production_date').datepicker({
showOn: 'button',
buttonImage: '/images/calendar.gif',
buttonImageOnly: true
});
答案 0 :(得分:0)
在别处得到答案:只需在原始输入框的keydown上隐藏日期选择器。这意味着在开始输入时,datepicker消失,并且直接使用输入的输入。
$('.dl_input_production_date').datepicker({
showOn: 'button',
buttonImage: '/images/calendar.gif',
buttonImageOnly: true
}).keydown( function() {
$(this).datepicker( "hide" );
});