2013-02-21 96 views
0

我在兩個字段上有一個日期選擇器: 開始日期和結束日期。選擇開始日期後,結束日期datepicker將更新最小和最大日期選項以及yearRange選項。JQuery Datepicker下拉式僅顯示一年的年份

如果我選擇29/12/2013,用戶只能從這裏選擇10天結束日期。

因此,我打開日期選擇器的結束日期,它的yearRange爲2013:2014,changeYear選項設置爲true。

但年下拉列表只顯示2013. 2014年不在列表中。

如果我點擊日期選擇器的右箭頭(下一步)以移至下一年,則會移至2014年,然後如果我點擊年份下拉列表,則會顯示2014年。

$(「#EndDate」)。datepicker(「option」,「yearRange」,'2013:2014');

如果在此代碼前面放置警報,則年度下拉菜單會按預期顯示2013年和2014年。

我使用JQuery 1.4.4

回答

1

This question似乎爲解決同一個問題。看起來您可能沒有指定日期範圍的正確格式。

+0

我相信這是從閱讀JQuery的文檔的yearRange正確的格式。如果沒有,任何人都可以告訴我正確的格式,以及爲什麼它會出現,如果我在我的問題的代碼顯示前面發出警報.... – user1079925 2013-02-21 19:32:46

+1

你甚至看過我提供的鏈接嗎? – 2013-02-21 19:33:03

+0

@Johnathan Wood - 我看過你突出顯示的問題。但是,我已經使用了文檔中列出的格式,並且年份下拉列表不會更新。但是,如果我提醒一下,年份下拉列表包含正確的年份。 – user1079925 2013-02-22 17:49:33

0

找到了解決辦法:

原代碼設置changeYear選項設置爲true改變yearRange選項之前 - 這將不顯示在下拉今年的榜單更新範圍:

$("#EndDate").datepicker("option", "changeYear", true); 
$("#EndDate").datepicker("option", "yearRange", yearRange); 

配售changeYear yearRange選項後的選項代碼解決了問題。現在,下拉列表按預期顯示年的範圍。因此,排序很重要。

$("#EndDate").datepicker("option", "yearRange", yearRange); 
    $("#EndDate").datepicker("option", "changeYear", true); 
-1

試試這個:

$(function() { 
     $("#txtDateofBirth").datepicker({ 

      changeYear: true, 
      dateFormat: 'dd/mm/yy', 
      yearRange: '1970:2025' 
     } 
     ); 
    });