Question

I am trying to set a javascript date so that it can be submitted via JSON to a .NET type, but when attempting to do this, jQuery sets the date to a full string, what format does it have to be in to be converted to a .NET type?

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

I am using MonoRail on the server to perform the binding to a .NET type, that aside I need to know what to set the form hidden field value to, to get properly sent to .NET code.

Was it helpful?

Solution

This MSDN article has some example Date strings that are parse-able is that what you're looking for?

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

OTHER TIPS

As travis suggests, you could simply change the parameter or class property (depending on what you are passing back) to a string, the parse it as his example.

You may also want to take a look at this article. It suggests that direct conversion for DateTime JSON serialization uses something more like the ticks property.

I suggest you use the YYYY-MM-DD notation which offer the best combo of unambiguity and readability.

so:

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

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top