在標準jquery.ui.datepicker小部件上,只有下一個和上一個按鈕用於選擇一個月份。如果我啓用年,它將顯示在選擇框中。jquery ui datepicker next and previous year
什麼是在日曆兩側實現兩個按鈕的好方法?一個用於選擇下一個月,另一個用於選擇下一個年份,在右側彼此相鄰顯示,對於左側的前一個按鈕執行相同的操作。
$(function() {
$("#dp").datepicker({changeYear: true});
})
在標準jquery.ui.datepicker小部件上,只有下一個和上一個按鈕用於選擇一個月份。如果我啓用年,它將顯示在選擇框中。jquery ui datepicker next and previous year
什麼是在日曆兩側實現兩個按鈕的好方法?一個用於選擇下一個月,另一個用於選擇下一個年份,在右側彼此相鄰顯示,對於左側的前一個按鈕執行相同的操作。
$(function() {
$("#dp").datepicker({changeYear: true});
})
看看JavaScript文件中prev/next按鈕的創建位置。
<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_1329396041654.datepicker._adjustDate('#datepicker', -1, 'M');" title="Prev"><span class="ui-icon ui-icon-circle-triangle-w">Prev</span></a>
以上是生成的上一個按鈕的示例。
你需要做的僅僅是創建一個/下一個按鈕,有以下內容:
_adjustDate('#datepicker',-1,'Y');
_adjustDate('#datepicker',+1,'Y');
因爲它們的功能。 檢查樣本http://jqueryui.com/demos/datepicker/dropdown-month-year.html並使用prev按鈕上的firefox/chrome檢查元素 - 將其調整爲使用'Y'而不是'M',您將看到它的工作原理。
希望這會有所幫助!
如果你只是想更換一個和上一個按鈕的當前行爲,使他們點擊你的時候會去一年,您可以使用StepMonths選項:
$(".selector").datepicker({ stepMonths: 12 });
最好的解決方案我發現是Leniel的答案與其他一些特性結合在一起,這裏是我的代碼爲我的日期元素
jQuery(document).ready(function(){
jQuery('input.date').each(function(){
jQuery(this).datepicker({dateFormat:'dd/mm/yy', changeMonth: true, stepMonths: 12, showAnim:"slideDown" });
jQuery('#ui-datepicker-div .ui-helper-hidden-accessible').css("position", "absolute !important");
jQuery('#ui-datepicker-div').css('clip', 'auto');
});
希望這可以幫助其他人,因爲它沒有我一樣多!
P.S.其他的東西是這樣的datepicker在所有的瀏覽器(ie6 +,ff3 +,chrome4 +,safari,歌劇)
你不喜歡這樣做使用changeYear和changeMonth在一起,而不是在兩邊的兩個按鈕日曆? – 2011-08-09 16:07:09
也許這會幫助你:http://stackoverflow.com/questions/3423670/jquery-ui-datapicker-how-to-add-next-previous-year-buttons jQuery UI不支持它,但其他插件。 – Tim 2012-01-31 14:54:20