1

我让用户使用日历/时钟弹出窗口选择日期时间,允许他们进行选择。但是,如果他们要进入并编辑日期以读取类似的内容:6/12/201 10:36:47 AM而不是6/12/2012 10:36:47 AM我的 Action 超过了 ModelState.IsValid 检查,并且当控制器尝试将对象保存到数据库时我得到一个错误(正确)。

在这种情况下如何正确验证 DateTime?(如果日期时间格式不正确,我想阻止用户甚至能够“提交”表单)

注意:我目前有 jquery.validate 并且通常(字段不是DateTime)我使用-当它们的格式不正确时,@Html.ValidationMessageFor(model => model.Field)这似乎对我当前的字段没有任何作用。DateTime

4

2 回答 2

2

您可以使用像这样的片段简单地为您的 DateTime 字段添加日期客户端验证器:

        $(element).rules('add', {
        date: true,
    });

其中“元素”是您对 DateTime 字段的输入。

于 2012-06-12T16:19:43.177 回答
0

您确定要导入所有必需的验证 js 文件吗?听起来您的服务器验证工作正常,但客户端什么也没做。我建议阅读 Brad Wilson 的以下帖子:link

于 2012-06-12T16:25:08.820 回答