我有一个日期存储在数据库中作为标准的DateTime格式。我得到了值,并将其显示在mm / yyyy的表单字段中。我的部分视图通过以下显示:
@Html.TextBoxFor(model => model.opinionDate, new { @Value = Model.opinionDate.ToString("MM/yyyy"), @readonly = "readonly" })
我有bootstrap-datepicker连接到日期字段。它被设置为仅允许选择月份和年份。
我的jQuery模型验证失败,因为它看起来不像日期。我该如何验证此值?我可以在验证发生之前修改该值(在当天添加01)吗?
答案 0 :(得分:0)
由于您的字段是只读的并且日期选择器已经为您提供了所需的值,因此您可能根本不验证字段或将其验证为字符串。然后,如果您需要额外的验证层,请在控制器中执行此操作。查看validating dates的文档。如果您验证为字符串,则可以快速检查以确保您具有适当数量的字符:
$( "#myform" ).validate({
rules: {
opinionDate: {
required: true,
rangelength: [4, 5]
}
}});
这将检查字符串是否长度在4-5个字符之间(" 1/15"或" 01/15")。希望这有帮助!
答案 1 :(得分:0)
我能够通过我的控制器解析进出数据库的值来解决它。我的模型将值视为字符串。到现在为止还挺好。我无法在上面进行验证,但我可以稍后处理。由于这是一个Intranet应用程序,因此使用日期选择器就足以获得一个干净的日期。