我有以下代码:
$('.custom_datepicker_selector').datepicker({
weekStart: 1
})
.on('changeDate', function(en) {
var correct_format;
correct_format = en.date.getFullYear() + '-' + ('0' + (en.date.getMonth() + 1)).slice(-2) + '-' + ('0' + en.date.getDate()).slice(-2);
$('.custom_datepicker_selector').datepicker('hide');
return $(this).parent().find("input[type=hidden]").val(correct_format);
});
这将显示日期格式,就像我想要的那样。然而,它仅在我单击日期选择器后才会执行,而不是最初执行。
最初显示该日期:
2013-02-17
点击它后我得到这个:
17/02/2013
如何立即显示正确的日期? (上面的代码在.ready中
我为此创建了一个 jsFiddle:http://jsfiddle.net/jwxvz/
这更像是一个 Rails 问题,而不是 javascript:
我听从了 abu 的建议,在 Rails 中这样做了:
<%= f.input :order_date, :as => :custom_datepicker, :input_html => { :value => localize(@client_order.order_date) } %>
您还可以定义默认日期格式。
试试这个:
$('.custom_datepicker_selector').datepicker({
weekStart: 1,
dateFormat: 'dd/mm/yy'
}).on('changeDate', function(en) {
$('.custom_datepicker_selector').datepicker('hide');
return $(this).parent().find("input[type=hidden]").val(en);
});
更新:(重要)
我看过你的 JSFiddle,你将文本框的默认值保留为value="2013-02-17"
这就是为什么它在开始时显示该值,只需将其删除即可。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)