【问题标题】:jqueryui datepicker dd/MM/yy culture related issuejqueryui datepicker dd/MM/yy 文化相关问题
【发布时间】:2011-12-19 13:33:51
【问题描述】:

我在我的 ASP.Net MVC Web 应用程序中使用jQueryUI datepicker 来进行简单的“从”和“到”日期范围过滤器。工作正常,直到我遇到日期时间格式(在区域设置中)设置为“dd-MM-yy”的机器。

在我的控制器中,我有一个回发操作,它接受自定义搜索对象作为参数,然后将其传递给搜索函数。此自定义对象具有“To”和“From”日期的属性,并且像往常一样自动进行绑定。在日期格式为“MM/dd/yy”的机器上正常工作,但如果我在区域设置中将其设置为“dd/MM/yy”,则无法解析日期。

最简单的解决方案是将日期选择器的格式更改为 “dd-MMM-yyyy” 一种非文化特定日期格式,但我的客户想要 选择的日期以 MM/dd/yyyy 格式显示。

在日期选择器或控制器级别处理此问题的任何干净且简单的建议?

【问题讨论】:

  • 为什么不在自定义搜索对象 ast 字符串中设置“From”/“To”的属性并在控制器中自行转换?您知道将收到它们的格式(MM/dd/yyyy),因此您可以更轻松地进行转换。
  • 我正在寻找一种更标准的方法。希望我不是唯一一个面临这种情况的人。模型绑定器级别的东西?
  • 发现这个非常有趣的article 关于模型绑定器。还有这个other onethis post on SO

标签: jquery-ui datepicker date-format


【解决方案1】:

您可以使用自定义格式的隐藏字段:

HTML:

 <input name="from" type="text" id="from" />
 <input name="hiddenFrom" type="hidden" id="hiddenFrom" />

Javascript:

$("#from").datepicker({
    altField: "#hiddenFrom",
    altFormat: "dd-mm-yy" // or whatever
});

您将找到有关 jquery ui 日期格式 here 的文档

【讨论】:

  • 这是 jQuery UI 日期选择器的标准功能。试一试,在后端代码中使用隐藏字段值。
  • 我的应用程序是一个全球网站。那么我怎样才能确保它在所有位置都正确显示呢?即当我的网站从美国打开时,他们应该将其视为 mm/dd/yyy(他们的系统的日期格式),而它来自英国,格式将是 dd/mm/yyyy(再次取决于他们的系统)
  • 请针对您的问题在 stackoverflow 上创建一个新问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-09
  • 2012-11-24
  • 2012-01-27
  • 2022-11-19
  • 1970-01-01
相关资源
最近更新 更多