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

时间:2020-03-05 18:43:52  来源:igfitidea点击:

我试图设置一个" javascript"日期,以便可以通过" JSON"提交为" .NET"类型,但是当尝试执行此操作时," jQuery"将"日期"设置为一个完整的"字符串" `,必须将其转换为.NET类型的格式是什么?

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

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

解决方案

回答

此MSDN文章中有一些示例Date字符串,可解析的是我们要查找的内容吗?

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

回答

正如travis所建议的,我们可以简单地将parameter或者class属性(取决于我们传递的内容)更改为字符串,并将其解析为他的示例。

我们可能还想看一下这篇文章。这表明DateTime JSON序列化的直接转换使用的是ticks属性。

回答

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

所以:

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