Форма в модальном окне: после сохранения выходит она же на всю страницу. Почему?

Главные вкладки

Аватар пользователя AnNik AnNik 3 февраля 2018 в 9:42

Делаю кастомный модуль, с нескольких его страниц вызывается всплывающее окно с формой. Если закрывать его крестиком - все нормально. Но если жму кнопку "Сабмит" - почему-то после этого на всю страницу открывается та же форма, что была во всплывающем окне, вместо того, чтобы окно просто закрылось и мы бы остались на той же странице, откуда это окошко вызывалось.

В чем может быть дело, натолкните на мысль плз...

Подозреваю, что чего-то не хватает в submitForm (сейчас там только нужная мне обработка введенных данных). Возможно, там надо прописывать какой-то редирект?

Вызывается окошко так:

    $link_filter = Url::fromRoute('mymodule.filterform');
    $link_filter->setOptions([
      'attributes' => [
        'class' => ['use-ajax'],
        'data-dialog-type' => 'modal',
        'data-dialog-options' => Json::encode(['width' => 490]),
      ]
    ]);
   
   
    $form['filter'] = [
      'linkform' => [
        '#type' => 'markup',
        '#markup' => Link::fromTextAndUrl(' Фильтр ', $link_filter)->toString()
      ],
    ];
... еще много чего ...
return $form

Сама формочка простенькая - пара селектов.

Комментарии

Аватар пользователя alex1954 alex1954 4 февраля 2018 в 23:42

не вникая в код, вспоминаю, что в модуле webform есть настройка каким образом, где открывается сообщение после посылки письма с формы.
- на этой же странице
- на новой
- указать на какой

Аватар пользователя gun_dose gun_dose 5 февраля 2018 в 9:16

Сабмит формы нужно делать аяксовым. А поскольку он у вас обычный, то происходит то, что происходит - для форм стандартное поведение после отправки перезагружать страницу формы. Именно страницу формы, а не текущую страницу - это не всегда одно и то же, как в вашем случае.