Sto usando jQuery datepicker il mio punto di vista del modellojQuery UI datepicker e vista MVC tipo di modello datetime
Ecco mio punto di vista:
@Html.TextBoxFor(o => o.JobStartDate, new { id = "dt1", @class = "input-block-level" })
@Html.ValidationMessage("JobStartDate")
e il mio script:
$("#dt1").datepicker({ dateFormat: "dd/mm/yy" });
Tutto funziona bene se la mia data è < = 12, se la mia data è superiore a 12, verrà visualizzato un messaggio di errore di convalida che dice "Il campo Data di inizio deve essere una data." (Sto usando jQuery convalida)
Ad esempio: data 16/12/2014 mi darà l'errore mentre 2014/12/12 non si
Ecco la mia vista del modello:
[Required]
[DataType(DataType.Date)]
[Display(Name = "Start Date")]
public DateTime JobStartDate { get; set; }
Sospetto che il mio modello di visualizzazione stia anticipando una data nel formato mm/gg/aaaa mentre sul mio datepicker ho specificato gg/mm/aa, c'è un modo per dire al mio viewmodel che mi aspetto il formato gg/mm/aa in modo che non venga visualizzato un messaggio di errore se la data è> = 12.
Questo non rende la convalida lato client (e certamente wont risolvere questione OP) e non si dovrebbe mai usare 'STRING' per una data! –