Kentico 12 MVC - настроить ответ BizForm - PullRequest
1 голос
/ 09 мая 2019

Мне нужно, чтобы в Kentico была определена форма, которая после отправки будет отображать видео на YouTube на той же странице (без перенаправления).Это будет похоже на «Показать текст».Есть ли способ переопределить существующий ответ?

1 Ответ

3 голосов
/ 13 мая 2019

Он не выглядит настраиваемым внутри Kentico "из коробки".И не выглядит слишком простым для реализации, но я думаю, что это все еще выполнимо:

Сначала создайте свой собственный виджет формы и унаследуйте его от KenticoFormWidgetController (вам может потребоваться переопределить нескольковнутренние методы).

Затем реализуйте свою пользовательскую логику в методе FormSubmitInternal - это пример из виджета по умолчанию:

if (!string.IsNullOrEmpty(bizFormInfo.FormDisplayText))
{
  string str = this.GetMacroResolver(bizFormInfo, bizFormItem, true).ResolveMacros(bizFormInfo.FormDisplayText, (MacroSettings) null);
  TagBuilder tagBuilder = new TagBuilder("div")
  {
    InnerHtml = str
  };
  tagBuilder.AddCssClass("formwidget-submit-text");
  return (ActionResult) this.Content(tagBuilder.ToString());
}

Вы можете связать эту логику сНапример, если в отображаемом тексте есть слово «видео» - поработайте над логикой, и вы сможете комбинировать свою собственную разметку HTML там.

...