【发布时间】:2011-12-16 07:46:42
【问题描述】:
我在 .NET ASP MVC3 Intranet 应用程序中使用 jQuery 的 datepicker 插件。使用应用程序的用户在不同的国家和地区设有办事处。这就是我想将 Thread.CurrentThread.CurrentCulture.DateTimeFormat 与 jQuery datepicker plugin 集成的原因。我的第一个解决方案是创建辅助扩展方法:
public static string jQueryDatePickerFormat(this HtmlHelper helper)
{
return Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern;
}
并在 javascript 中设置 dateFormat 选项,如下所示:
$("#StartDate").datepicker({ dateFormat: '@Html.jQueryDatePickerFormat()' });
不久之后,我意识到 datepicker 的 dateFormat 选项支持的格式与 .NET 中的格式不同。
例如:Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern 用于 pl-PL 返回 yyyy-MM-dd(它将日期格式化为 2010-01-01 ),而 datePicker 中的相同格式将设置与 20102010 January 01 相同的日期。我迅速调整了我的辅助方法并应用了快速修复Replace("yyyy", "yy").Replace("MM", "mm"):
public static string jQueryDatePickerFormat(this HtmlHelper helper)
{
return Thread.CurrentThread.CurrentCulture.DateTimeFormat.ShortDatePattern.Replace("yyyy", "yy").Replace("MM", "mm");
}
我工作,但我等待其他问题出现的那一刻。有没有什么简单的方法可以在 jQuery 的 datePicker 插件中实现 .NET 语言环境设置?
谢谢,帕维尔
【问题讨论】:
-
嗨,您的问题解决了吗?
标签: jquery asp.net-mvc asp.net-mvc-3 jquery-ui jquery-ui-datepicker