Я использую twitter bootstrap в приложении zf2. Модальное окно начальной загрузки отображает форму, содержащую данные пользователя, которые я хотел бы отредактировать и сохранить. Это довольно тривиально, если я просто отправляю форму в диалоговом окне и перезагружаю всю страницу, но я ищу способ проверить форму без ее отправки, и в идеале, если данные действительны, чтобы он передал новые данные обратно на страницу при закрытии модального диалога.
Как я могу это сделать - это должен быть вызов ajax? Если да, то как бы я структурировал это в моем контроллере, чтобы вернуть проверку формы таким образом, чтобы ошибки могли отображаться в модальном режиме?
Редактировать 1: Принятый ответ ниже до сих пор на месте.
Единственное, что мне трудно понять, это то, как передать данные проверки от контроллера обратно в модальное окно начальной загрузки.
Таким образом, простой рабочий процесс - модальное окно открывается загруженным с формой редактирования, привязанной к модели пользователя, которая показывает данные пользователя для редактирования (все они предварительно загружены и уже назначены для представления). Модальная форма отправляется, jquery подключается к отправке формы и отправляет данные в виде ajax-запроса в UserController::EditUserAction, где данные формы проверяются на соответствие входному фильтру моделей. Если оно оказывается действительным, данные сохраняются, а модальное диалоговое окно закрывается. Если данные недействительны, скажем, изменение адреса электронной почты на адрес, который уже существует, действие возвращает JsonModel с ошибками формы - как это затем передается в модальное окно начальной загрузки, чтобы выделить поле, вызвавшее ошибку, например так, как это делает ZF автоматически, когда форма обычно отправляется?
data-dismiss="modal"
из<button type="button" class="btn btn-default" data-dismiss="modal">Submit</button>
в модальном диалоговом окне, чтобы гарантировать, что нажатие кнопки не закроет модальное диалоговое окно. 16.03.2014