Как настроить благодарственное сообщение виджета mvc формы sitefinity по умолчанию как html?

Я создал тестовую форму и отображал ее с помощью стандартного виджета mvc формы sitefinity, и при отправке формы он отображает сообщение с благодарностью (напрямую в виде текста) без HTML. Я хочу добавить немного HTML с ним, чтобы я мог стилизовать его по своему вкусу. В настоящее время это отображается как изображение показывает

1 ответ

Измените форму на странице, чтобы использовать UseAjaxSubmit из модели дизайнера виджетов. После этого перейдите в "\ResourcePackages\Bootstrap\MVC\Views\Form\Index.cshtml" и найдите этот фрагмент кода.

    if (Model.UseAjaxSubmit)
    {

            <h3 data-sf-role="success-message" style="display: none;">
                @Model.SuccessMessage
                <div>my customized message</div>
            </h3> 

Вы можете изменить рендеринг непосредственно в шаблоне по умолчанию, но я бы порекомендовал вам создать новый шаблон для виджета и оставить его по умолчанию.

The Sitefinity Knowledgebase contains workarounds to override this when using AjaxSubmit or not.

If using AjaxSubmit is not enabled:

  1. Create a new file under the Form folder (again, ResourcePackages > Bootstrap > MVC > Views > Form) with the following name: "Form.SubmitResultView.cshtml"
  2. Use the following to display the styled text:

@Html.Raw(HttpUtility.HtmlDecode(ViewBag.SubmitMessage))

I ended up having to add my Form.SubmitResultView.cshtml under Mvc > Views > Forms and used the following markup as I needed a consistent wrapper div:

<div class="some-class">
    @ViewBag.SubmitMessage
</div>
Другие вопросы по тегам