Murali Murugesan
Murali Murugesan

Reputation: 22619

ValidationMessageFor with model and html attribute only - MVC 3

Working on a MVC 3 application.

I need to add a class to the validation message html. I mean for span tag.

My Model

 [Required(ErrorMessage = "Role Name is required")]
 [RegularExpression(@"^[a-zA-Z ]+$", 
     ErrorMessage = "Only alphabets and spaces allowed")]
 public string RoleName { get; set; }

Markup

  <label for="name">RoleName</label>
  @Html.TextBoxFor(m => m.RoleName)
  @Html.ValidationMessageFor(m => m.RoleName, "some", 
                           new { @class = "immediate" })

But i could not see overloaded method like @Html.ValidationMessageFor(m => m.RoleName, htmlAttributes) . if i give some text, it is not showing my validaton message entered in model. It always shows that some text only.

Any fix for this?

Upvotes: 18

Views: 15368

Answers (1)

Jared
Jared

Reputation: 6060

You should be able to simply pass in null...

@Html.ValidationMessageFor(m => m.RoleName, null, new { @class = "immediate"})

Upvotes: 25

Related Questions