Как закрыть модальное окно при отправке формы?

Для закрытия модального окна при отправке формы в MODX, вы можете использовать JavaScript в сочетании с jQuery.

1. В шаблоне MODX, где вы определяете модальное окно, создайте функцию closeModal(), которая будет закрывать окно. Например:

<script>
  function closeModal() {
    $('.modal').fadeOut();
  }
</script>

2. В HTML-разметке формы добавьте onsubmit атрибут, который будет вызывать функцию closeModal() при отправке формы. Например:

<form onsubmit="closeModal()">
  <!-- Ваши поля формы -->
  <input type="submit" value="Отправить">
</form>

3. Вставьте следующий скрипт в ваш файл сценария на MODX:

$(document).ready(function() {
  $('form').on('submit', function(event) {
    event.preventDefault(); // Отменяем отправку формы по умолчанию
    $.ajax({
      url: "URL_ВАШЕГО_РАЗДЕЛА_Обработчика_Формы",
      method: "POST",
      data: $(this).serialize(), // Сериализуем данные формы
    })
    .done(function(response) {
      // Здесь вы можете добавить любую обработку успешной отправки формы
      closeModal(); // Закрываем модальное окно после отправки формы
    })
    .fail(function(response) {
      // Здесь вы можете обработать ошибки отправки формы
    });
  });
});

4. Замените URL_ВАШЕГО_РАЗДЕЛА_Обработчика_Формы на URL обработчика формы на вашем сайте, который будет принимать и обрабатывать данные формы.

Теперь, когда пользователь отправляет форму, модальное окно будет закрыто с помощью функции closeModal(), а данные будут отправлены на сервер в фоновом режиме. Вы можете дополнить скрипт обработкой успешной отправки или ошибок, в зависимости от ваших потребностей.