MVC3 jQuery - 部分验证

时间:2011-11-22 01:39:58

标签: jquery asp.net-mvc-3 razor

我有一个表单,用户可以在其中输入两种类型的数据: 1.项目细节 2.与项目有关的调查问题

表单有2个提交按钮 1.保存草稿 2.提交

“保存草稿”帖子需要仅验证项目详细信息,而不验证调查字段。提交帖子应验证项目和调查数据。

当用户点击“保存草稿”时,有没有办法部分验证数据?也许处理“保存草稿”点击并忽略/删除调查字段的验证...

1 个答案:

答案 0 :(得分:1)

您可以使用动作过滤器属性进行部分验证。您可以根据自己的需要进行自定义。它使您可以访问请求和模型状态。通过访问模型状态,您可以修改验证错误。

public class ValidateDraftAttribute : ActionFilterAttribute 
{  
  public override void OnActionExecuting(ActionExecutingContext filterContext)
  {

     var modelState = filterContext.Controller.ViewData.ModelState;
     var incomingValues = filterContext.Controller.ValueProvider;

      modelState[key].Errors.Clear();

  }
}

然后将该属性添加到控制器中。