如何在我的jQuery Datepicker中使用其他日期格式?

时间:2012-09-24 10:33:11

标签: c# jquery asp.net jquery-ui-datepicker date-format

我在ASP.NEt应用程序中使用了jquery datepicker,我想如果用户来自Spania或德语我使用其他dateformat。

这是我的jquery代码:

$(function () {
    $("#txtAbwesenheitBis").datepicker();
    $("#format").change(function () {
        $("#txtAbwesenheitBis").datepicker("option", "dateFormat", $(this).val());
    });
});

我如何使用其他日期格式?或者我如何使用德语日期格式?

3 个答案:

答案 0 :(得分:2)

The documentation介绍了如何本地化日历。

基本上你只需要包含适当的本地化脚本,你可以从jQuery-ui网站上下载,例如:

<script type="text/javascript" src="/scripts/jquery.ui.datepicker-de.js'></script>

并且您不需要指定dateFormat参数:相应的默认值将由本地化脚本设置。要支持多种语言,您可以执行以下操作:

<script type="text/javascript" src="/scripts/jquery.ui.datepicker-<% =MyLanguage %>.js'></script>

此解决方案为您提供弹出日历中的本地化月份和日期名称,以及与所选文化相匹配的默认日期格式。

答案 1 :(得分:1)

试试这个

$("#txtAbwesenheitBis").datepicker({ dateFormat :"dd.mm.yyy"});

表示德语格式

答案 2 :(得分:1)

Here是显示可能的格式选项的链接。只需使用说明构建所需的格式字符串

<强> UPD: 要根据标签值设置格式字符串,您可以使用以下内容:

if($("#lbllanguagelabel").text() == "EN")
  { 
    $("#txtAbwesenheitBis").datepicker("option", "dateFormat", 'en-format-string'); 
  } else {
   ...
 }

但是请注意,如果你的标签有runat =“server”,那么它在客户端的id将与服务器端的id不同,所以你应该使用$("#<%=lbllanguagelabel.ClientID %>").text()或更简单的定义一些独特的上课:

<asp:lable id="lbllanguagelabel" runat="server" CssClass="languageLable"...

和JS:

if($(".languageLable").text() == "EN")
      { 
        $("#txtAbwesenheitBis").datepicker("option", "dateFormat", 'en-format-string'); 
      } else {
       ...
     }