如何格式化要由 jQuery 序列化的 javascript 日期

Posted

技术标签:

【中文标题】如何格式化要由 jQuery 序列化的 javascript 日期【英文标题】:How can I format a javascript date to be serialized by jQuery 【发布时间】:2010-09-07 00:12:47 【问题描述】:

我正在尝试设置 javascript date 以便可以通过 JSON 将其提交到 .NET 类型,但是在尝试执行此操作时,jQuerydate 设置为完整string,它必须是什么格式才能转换为.NET类型?

var regDate = student.RegistrationDate.getMonth() + "/" + student.RegistrationDate.getDate() + "/" + student.RegistrationDate.getFullYear();
j("#student_registrationdate").val(regDate); // value to serialize

我在服务器上使用MonoRail 执行与.NET 类型的绑定,除此之外,我需要知道将表单隐藏字段值设置为什么,以便正确发送到.NET 代码。

【问题讨论】:

【参考方案1】:

这个MSDN article 有一些可解析的示例日期字符串是您正在寻找的吗?

string dateString = "5/1/2008 8:30:52 AM";
DateTime date1 = DateTime.Parse(dateString, CultureInfo.InvariantCulture); 

【讨论】:

【参考方案2】:

正如 travis 所建议的,您可以简单地将参数或类属性(取决于您传回的内容)更改为字符串,并将其解析为他的示例。

您可能还想看看this article。它表明 DateTime JSON 序列化的直接转换使用更像 ticks 属性的东西。

【讨论】:

【参考方案3】:

我建议您使用 YYYY-MM-DD 表示法,它提供了明确性和可读性的最佳组合。

所以:

var regDate = student.RegistrationDate.getFullYear() + "-" + student.RegistrationDate.getMonth() + "-" + student.RegistrationDate.getDate(); j("#student_registrationdate").val(regDate);

【讨论】:

以上是关于如何格式化要由 jQuery 序列化的 javascript 日期的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有 jQuery 的情况下序列化表单? [复制]

为要由 java 的 try with resources 语句管理的资源声明自变量

java中如何把输入的数据以json格式保存在文本里面

序列化对象以在 JavaScript/jQuery 中查询字符串 [重复]

jquery中将序列化成json的日期转化为普通日期格式

jQuery 序列化表单数据 serialize() serializeArray()