我正在生產環境中工作。問題是DOB字段提供了mvc模型驗證,並且在視圖中使用了jquery.validate.unobtrusive.js來驗證表單。MVC模型驗證失敗 - 日期必須是有效日期
日期選擇器用於選擇日期,當我提交表單時,ModelState.IsValid失敗。
代碼如下所示。這適用於Chrome,但不適用於其他瀏覽器。
在我的模型:
[Required(ErrorMessage = "Please enter DOB")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> DOB { get; set; }
這是我的看法:
<div class="col-md-6">
<div class="col-xs-12">
<label>DATE OF BIRTH<p>*</p></label>
</div>
<div class="col-xs-12">
<div class="form-group">
<div class="input-group" id="datetimepicker2">
@Html.TextBoxFor(d => d.DOB, new { @class = "form-control input-validation-error" })
<span class="input-group-addon"><span class="icon-small-calendar"></span></span>
</div>
@Html.ValidationMessageFor(m => m.DOB)
</div>
</div>
</div>
這是我的日期選擇器:
$('#datetimepicker2').datetimepicker({
format: 'MM/DD/YYYY',
maxDate: new Date()
});
在我的控制器:
if (ModelState.IsValid)
{
///some action
}
在我的web.config:
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
有人能幫助我如何提前 解決這個問題對於所有瀏覽器
感謝塔拉克
的https: //tutorials.com/questions/28114874/html-displayfor-dateformat-mm-dd-yyyy它可以幫助 –