jquery validate:仅在特定方法上显示错误消息

时间:2013-06-27 07:25:03

标签: jquery asp.net-mvc jquery-validate data-annotations

我有一个需要验证属性和远程验证属性的字段。

我想仅在远程验证失败时显示错误消息,而不是在必需属性上显示。

我可以将错误消息设置为空字符串,但我不想修改ViewModel数据注释。

是否可以仅从客户端执行此操作,而无需修改ViewModel属性?

// working hack
public class CreateViewModel
{
    [Required(ErrorMessage = " ")]
    [Remote("IsUserNameValid", "Users", ErrorMessage = "This user name is already used")]
    [Display(Name = "User Name")]
    public string UserName { get; set; }
}

1 个答案:

答案 0 :(得分:2)

您可以disable所需的规则。例如,给出一个带有id" LoginForm"的表单。以及ID为" UserName"的必填输入字段,您可以使用以下任一方法禁用所需规则:

$("#UserName").rules("remove", "required");
$("#loginForm").validate().settings.rules["UserName"].required= false;

另一个选择是change the error message为空字符串。您可以再次选择一些选项,例如:

$("#UserName").rules("add", {
    messages: {
        required: ""
    }
});
$("#loginForm").validate().settings.messages["UserName"].required= '';

最后,这是关于使用表单的jquery验证对象的规则和消息。

希望它有所帮助!