Сообщение об ошибка в модальных окнах

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 15 мая 2016 в 15:25
Как вывести стандартные сообщения об ошибках в модальном окне?
Например есть ссылка

  1. <a href="/ссылка_на_экшен_контроллера" class="ajax-modal">Ссылка</a>
В экшене такой код
  1.  
  2. $form = $this->getForm('form');
  3. $is_submitted = $this->request->has('submit');
  4. $data = $form->parse($this->request, $is_submitted);
  5.  
  6. if($is_submitted) {
  7. $errors = $form->validate($this, $data);
  8. };
  9.  
  10. $template = cmsTemplate::getInstance();
  11.  
  12. $template->render('form_request', array(
  13. 'form' => $form,
  14. 'data' => $data,
  15. 'errors' => $errors
  16. ));
  17.  
Если отправляю форму со страницы — все хорошо.
Но если форма отправляется из модального окна и в форме ошибке, то страницы обновляется.
Можно ли сделать чтобы ошибки отображались без обновления страницы.
Нужно в контроллере поставить проверку is_ajax?
#2 15 мая 2016 в 16:42

Нужно в контроллере поставить проверку is_ajax?

Роман Волков
да. И если запрос по аякс, то ошибки отдавать как то так:

  1. cmsTemplate::getInstance()->renderJSON(array(
  2. 'errors' => $errors
  3. ));
где $errors массив ошибок от формы

а в случае успеха отправки формы как то так:

  1. cmsTemplate::getInstance()->renderJSON(array(
  2. 'errors' => false,
  3. 'callback' => 'jsFuncNameToResult',
  4. ));
#3 15 мая 2016 в 17:31
Спасибо Fuze. Проблема решена.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.