Превращение Html.ValidationSummary в дружественную к JavaScript строку

У меня есть частичное представление, которое вызывается через Ajax.BeginForm() и мне нужно вернуть Html.ValidationSummary() в теге сценария, который будет отображаться с Toastr

Вот код, который я имею в частичном:

<script id="partial-js-container" data-ajax-update="true">
    toastr.error('@Html.ValidationSummary()');
</script>

Строка, которая возвращается в Html.ValidationSummary() имеет возвращение кариеса и заканчивает тем, что не работает. Как я могу это исправить и сделать его надежным?

1 ответ

Решение

Как я могу это исправить и сделать его надежным?

Правильно закодировав его:

<script id="partial-js-container" data-ajax-update="true">
     var message = @Html.Raw(Json.Encode(((@Html.ValidationSummary()==null)?"":@Html.ValidationSummary().ToHtmlString())));
                if (message.length > 0) {
            toastr.error(message);
        }
</script>
Другие вопросы по тегам