2012-04-24 71 views
17

我需要在我的jQuery UI日期選擇器中將短名稱中的月份名稱更改爲長名稱jQuery UI datepicker:如何將下拉列表中的月份名稱從短名稱改爲長名稱?

我的屬性是:

$.datepicker.regional['de'] = { 
    prevText: '<zurück', 
    nextText: 'vor>', 
    monthNames: ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 
      'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'], 
    monthNamesShort: ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 
      'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'], 
    dayNames: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'], 
    dayNamesShort: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'], 
    dayNamesMin: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'], 
    weekHeader: 'Wo', 
    dateFormat: 'dd.mm.yy', 
    firstDay: 1, 
    changeMonth: true, 
    changeYear: true, 
    yearRange: "-0:+2", 
    isRTL: false, 
    showMonthAfterYear: false, 
    minDate: 0 
}; 

$.datepicker.setDefaults($.datepicker.regional['de']); 
var dates = $("#von, #bis").datepicker({ 
    showOn: "button", 
    buttonImage: "calendar.png", 
    buttonImageOnly: true, 
    buttonText: 'Datum w\u00E4hlen', 
    onSelect: function (selectedDate) { 
     var option = this.id == "#von" ? "minDate" : "maxDate", 
       instance = $(this).data("datepicker"), 
       date = $.datepicker.parseDate(
        instance.settings.dateFormat || 
        $.datepicker._defaults.dateFormat, 
        selectedDate, instance.settings); 
     dates.not(this).datepicker("option", option, date); 
    } 
}); 

目前日曆只顯示類似的「四月」,而不是「月」,在下拉列表中短月份名稱。

也許我用一段代碼覆蓋默認的長名稱?

請幫忙。

回答

30

使用屬性monthNamesShort併爲其指定所需的名稱。

在我的情況,我想表明,在一個月下拉,月長的名字,在葡萄牙語:

monthNamesShort: [ "Janeiro", "Fevereiro", "Março", "Abril", 
        "Maio", "Junho", "Julho", "Agosto", "Setembro", 
        "Outubro", "Novembro", "Dezembro" ] 
+3

這個回答應該是被接受的答案。 – 2013-08-21 17:40:56

+0

我在俄羅斯也做過同樣的事情。 – 2013-11-29 06:58:59

+0

如何在全球範圍內設置? – 2015-05-06 12:45:09

0

在許多地方,他們使用的日期格式,以確定哪些列出使用。不幸的是,在這段代碼中,他們並不一致地使用它。我做了調整,按照他們在_generateMonthYearHeader方法(約8985線):

更換

monthNamesShort[ month ] 

(inst.settings.dateFormat.match(/MM/) ? monthNames : monthNamesShort)[ month ] 
相關問題