![](/img/trans.png)
[英]Jquery datepicker change event trigger and input's default change event
[英]jQuery trigger a DatePicker change event
我有以下代碼:
$('.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);
});
這會像我想要的那樣顯示日期格式。 但是它只在我點擊datepicker后才這樣做,而不是最初。
最初顯示此日期:
2013-02-17
在我點擊之后我得到了這個:
17/02/2013
如何立即顯示正確的日期? (上面的代碼在.ready中
我為此創建了一個jsFiddle: http : //jsfiddle.net/jwxvz/
這比javascript更像是一個rails問題:
我遵循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"
,這就是為什么它顯示開始時的值只是刪除它。
只是你必須使用:
$('.custom_datepicker_selector').datepicker({
weekStart: 1,
dateFormat:'yy-mm-dd'
})
你可以在這里參考: 鏈接
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.