是否有办法利用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.
答案 0 :(得分:2)
m0s的评论向我指出了这个StackOverflow问题/答案。 (How do I get the collection of Model State Errors in ASP.NET MVC?)
这可能是多余的,但这是我的工作解决方案:
@if (ViewData.ModelState.ContainsKey("SomeProperty))
{
@Html.TextBoxFor(m => m.SomeProperty),
new {
@some_attribute = ViewData.ModelState["SomeProperty"].Errors[0].ErrorMessage })
}
显然,你想确保你的ModelState在解决第一个问题之前有错误,在我的情况下,这将永远是真的。
答案 1 :(得分:0)
尝试: htmlHelper.ValidationMessage(string ModelName)。我认为返回没有标记的字符串。