MVC 3 - 在客户端设置非必需字段

时间:2012-08-05 14:11:13

标签: javascript jquery asp.net-mvc-3 asp.net-mvc-validation

我正在构建一个MVC 3应用程序。

我可以在客户端设置一个非必需字段(使用JavaScript / jQuery)吗?

当页面中的内容发生变化时,我需要它是动态的。

更新:我查看了我的页面的源代码,并看到了window.mvcClientValidationMetadata数组,其中验证规则被推入其中。我可以根据自己的需要使用它吗?

由于

2 个答案:

答案 0 :(得分:0)

你可以在客户端做任何你想做的事。

您可以连接到表单提交事件,并在其中检查字段是否已填写,并提交表单或根据需要显示错误消息。

当然,如果关闭JavaScript或者如果用户足够了解此字段可能最终未填写,那么请始终检查服务器端(除了Model.IsValid之外,您可以添加对字段的检查您尚未专门添加RequiredAttribute。)

另一种选择,如果验证逻辑很复杂,则覆盖ModelMetadata以提供自定义验证。

答案 1 :(得分:0)

您可以像这样设置验证规则:

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

删除它:

$('element').rules('remove', 'required');

或者您可以添加有条件地需要值的自定义验证方法。看到这个:http://docs.jquery.com/Plugins/Validation/Validator/addMethod