Подтвердить что ты не робот

Как расширить помощник HTML ValidationSummary в ASP.NET MVC?

Мне нужно обернуть сводку проверки в div. Как установить сводку проверки, чтобы обернуть ее с помощью div при наличии ошибок?

<div class="validation-summary"> 
  <%= Html.ValidationSummary("Login was unsuccessful. Please correct the errors and try again.") %>
</div>
4b9b3361

Ответ 1

Мне пришлось расширять сводные расширения валидации в другом моем проекте, чтобы иметь дело с более чем одной формой на странице.

Хотя это другое, вы можете создать свой собственный метод расширения...

namespace System.Web.Mvc
{
    public static class ViewExtensions
    {
        public static string MyValidationSummary(this HtmlHelper html, string validationMessage)
        {
            if (!html.ViewData.ModelState.IsValid)
            {
                return "<div class=\"validation-summary\">" + html.ValidationSummary(validationMessage) + "</div>"
            }

            return "";
        }
    }
}

Затем просто позвоните

<%= Html.MyValidationSummary(
    "Login was unsuccessful. Please correct the errors and try again.") %>

HTHS, Чарльз

Ответ 2

Что вы можете сделать, так это:

<%if (!ViewData.ModelState.IsValid) { %>
<div class="validation-summary"> 
    <%= Html.ValidationSummary(
        "Login was unsuccessful. Please correct the errors and try again.") %>
</div>
<% } %>

Ответ 3

Для MVC 2 ValidationSummary является методом расширения, вы должны добавить

using System.Web.Mvc.Html;

Ответ 4

Используйте этот тег CSS для li, например...

.validation-summary-errors ul li {color:Red;}