日期选择器字段 'fixes' 回发后的日期

Datepicker field 'fixes' date after postback

我的 MVC3 网站使用 jQuery 日期选择器字段,例如让用户 select 他的出生日期。输入的值在发布表单后在控制器中进行验证,以确保年龄超过 18 岁。这工作正常,除了日期选择器在回发后将无效日期更改为第一个可用的有效日期。

今天提交表格,例如 11-11-2000 returns,模型错误 'You need to be at least 18 years old'。模型再次绑定到字段,但日期选择器将其更改为 18 年前的今天,即 04-05-1997。

我怎样才能以一种不太老套的方式保留用户输入的原始日期?

给你!

DEMO

Js

$(document).ready(function(){
    var today=new Date();
    var year=today.getFullYear()-18;
    var month=today.getMonth()+1;
    var day=today.getDate();
    var newDate=new Date(month +'/' +day + '/' +year);
    $('#txtFromDate').datepicker({
         maxDate: newDate
     });

});

HTML

DOB: <input type="text" id="txtFromDate" readonly />