2

有没有一种方法可以利用 Html.ValidationMessageFor() 来返回没有 HTML 标记的验证文本?

目前这段代码:

@Html.ValidationMessageFor(m => m.SomeProperty)

返回这个:

<span class="field-validation-error" data-valmsg-for="Model.SomeProperty" data-valmsg-replace="true">This field is required.</span>

我更喜欢这个:

This field is required.
4

2 回答 2

2

m0s 的评论向我指出了这个 StackOverflow 问题/答案。(如何在 ASP.NET MVC 中获取模型状态错误的集合?

这可能是多余的,但这是我的工作解决方案:

@if (ViewData.ModelState.ContainsKey("SomeProperty))
{
     @Html.TextBoxFor(m => m.SomeProperty), 
          new {
               @some_attribute = ViewData.ModelState["SomeProperty"].Errors[0].ErrorMessage })     
}

显然,您希望在解决第一个错误之前确保您的 ModelState 有错误,在我的情况下,这始终是正确的。

于 2013-05-07T20:57:22.460 回答
0

试试:htmlHelper.ValidationMessage(string ModelName)。我认为返回没有标记的字符串。

于 2013-05-07T18:28:42.887 回答