Validação de data do cliente separada por pontos no asp MVC 4
Então eu tenho batido minha cabeça na parede com esse problema por horas. Estou criando validação localizada para meus campos de entrada de data. Eu substituí o validador de data jquery padrão e o método parece estar funcionando bem. Tudo parece ir como planejado, mas o validador de jquery simplesmente não me deixa postar o formulário.
O ponto de interrupção colocado no método de validação personalizado é atingido corretamente no firebug e retorna verdadeiro como deveria.
Depois de continuar a execução, os campos de erro de validação com retângulos vermelhos desaparecem, mas o resumo de validação ainda exibe os erros de propriedade gerados pelo MVC.
Aqui está o código:
tracker.validate.js
// Replace dots so jq validator can understand what's going on
$(function () {
$.validator.addMethod(
"date",
function (value, element) {
var s = value;
s = value.replace(/\./g, '/');
// Chrome requires tolocaledatestring conversion, otherwise just use the slashed format
var d = new Date();
return this.optional(element) || !/Invalid|NaN/.test(new Date(d.toLocaleDateString(value))) || !/Invalid|NaN/.test(new Date(s));
},
""
);
});
$.validator.unobtrusive.parse();
Aqui estão as referências de script na minha visão parcial, onde este formulário está localizado
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/tracker.validate.js")" type="text/javascript"></script>
Editortemplate de data e hora
@model DateTime
<input style="width:44%;display:inline;" type="text" name='@(ViewData.TemplateInfo.HtmlFieldPrefix).Day' value='@Model.Date.ToShortDateString()' class='date'/>
<input style="width:30%;display:inline;" type="text" name='@(ViewData.TemplateInfo.HtmlFieldPrefix).Time' value='@Model.ToShortTimeString()' onblur='formatTimeInput(this)'/>
@Html.HiddenFor(model => model)
Inicialização do Datepicker:
$.datepicker.setDefaults($.datepicker.regional['fi']);
$('.date').datepicker({
showOn: "button",
dateFormat: "dd.mm.yy",
buttonImage: '/content/images/calendarIcon.png',
buttonImageOnly: true,
constrainInput: false
});
Existe algo que estou perdendo ou existe mesmo assim para me livrar desses erros de propriedade padrão?