Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 如何在CRUD情况下为MVC项目中的模型正确验证DateTime?_Asp.net Mvc 3_Validation_Datetime_Razor_Jquery Validate - Fatal编程技术网

Asp.net mvc 3 如何在CRUD情况下为MVC项目中的模型正确验证DateTime?

Asp.net mvc 3 如何在CRUD情况下为MVC项目中的模型正确验证DateTime?,asp.net-mvc-3,validation,datetime,razor,jquery-validate,Asp.net Mvc 3,Validation,Datetime,Razor,Jquery Validate,我让用户使用caldendar/clock弹出窗口选择日期时间,允许他们进行选择。但是,如果他们进入并编辑日期以读取类似以下内容:6/12/201 10:36:47 AM而不是6/12/2012 10:36:47 AM我的操作将通过ModelState.IsValid检查,并且当控制器尝试将对象保存到数据库时,我会收到一个错误(正确的做法) 在这种情况下,如何正确验证DateTime?(如果日期时间格式不正确,我想阻止用户“提交”表单) 注意:我目前有jquery.validate,通常(字段不

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

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


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

您只需使用snipet为您的日期时间字段添加日期客户端验证程序,如下所示:

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

其中“element”是DateTime字段的输入。

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

您是否也有服务器端数据验证,因为仅仅进行客户端验证可能还不够?您可以安全地进行验证,因为您可能会验证并向用户返回错误/警告消息。