【问题标题】:why is my jquery UI datepicker not defaulting to english为什么我的 jquery UI datepicker 没有默认为英文
【发布时间】:2026-02-15 15:05:02
【问题描述】:

我基本上复制了代码from here,但是当我测试我的网站时,我看到了这个:

alt text http://img148.imageshack.us/img148/8167/datepicker.png

知道为什么我没有得到英文日历

【问题讨论】:

  • 因为你的计算机区域不同
  • cOmrade 表示您的计算机的日期/时间/语言/国家/地区可能设置为中文,并且基于日历显示文本。
  • @Aseem Gautam - 不,不是这样

标签: jquery jquery-ui datepicker


【解决方案1】:

From the jQuery UI docs,它基于您计算机的区域设置,如 c0mrade 在 cmets 中所说,但您可以覆盖:

本地化

Datepicker 支持对其内容进行本地化,以适应不同的语言和日期格式。每个本地化都包含在其自己的文件中,并在名称后附加语言代码,例如jquery.ui.datepicker-fr.js 用于法语。这些文件在主日期选择器代码之后加载。他们将自己的设置添加到可用的本地化集中,并自动将它们应用为所有实例的默认设置。

$.datepicker.regional 属性包含一个本地化数组,由语言代码索引,'' 表示默认值(英语)。每个条目都是一个具有以下属性的对象:closeText、prevText、nextText、currentText、monthNames、monthNamesShort、dayNames、dayNamesShort、dayNamesMin、weekHeader、dateFormat、firstDay、isRTL、showMonthAfterYear 和 yearSuffix。

您可以使用以下方法恢复默认本地化:

$.datepicker.setDefaults($.datepicker.regional['']);

然后可以覆盖特定语言环境的单个日期选择器:

$(selector).datepicker($.datepicker.regional['fr']);

【讨论】:

  • @Nick Craver:我已经有了这条线:$('#datepicker').datepicker({ dateFormat: 'dd-M-yy' }); 我将如何将两者结合起来?
  • @oo - 只需在它之前调用$.datepicker.setDefaults($.datepicker.regional['']);,为所有日期选择器设置区域...您可以将 2 个字符串中的任何一个作为参数放在末尾,查看源代码其中,最后的下拉列表可获取选项列表:view-source:jqueryui.com/demos/datepicker/localization.html
  • 我用澳大利亚英语试过这个,但它仍然显示美国日期格式 $.datepicker.setDefaults($.datepicker.regional['']); $("#_ctl0__ctl0_Body_Body_datepicker").datepicker($.datepicker.regional['en-AU']);
  • 仅供参考,不要忘记包含可以在自定义构建中的development-bundle/ui/i18n/ 中找到的翻译文件。没有它,区域将始终恢复为默认值。
最近更新 更多