@Jiffa

Как правильно сделать форму в модальном окне на Drupal7?

На сайте есть форма обратной связи, открывается в модальном окне через colorbox. В форме стоит валидация по 2 полям (обязательные имя и телефон) и рекапча от гугла, добавлена через модуль recaptcha. Проблема вот в чем:
когда форма открывается, colorbox подгружает страницу с формой и подключается еще один скрипт colorbox, при каждом следующем открытии формы эти колорбохи начинают плодиться со страшной скоростью и капча есть только в одном из новых окон. В модуле colorbox прописал в исключения страницы форм и проблема с размножением colorbox решилась, но теперь не работают валидация ни по одному из полей и капча. При сабмите формы в консоль падает следующая ошибка:
colorbox_inline.js?p4jesu:18 Uncaught TypeError: $(...).once(...).colorbox is not a function
    at Object.attach (/sites/all/modules/colorbox/js/colorbox_inline.js?p4jesu:18:65)
    at Object.<anonymous> (<anonymous>:76:12)
    at Function.each (<anonymous>:33:533)
    at Object.Drupal.attachBehaviors (<anonymous>:74:5)
    at Object.insert (<anonymous>:570:14)
    at Drupal.ajax.success (<anonymous>:428:44)
    at Object.success (<anonymous>:189:19)
    at Object.a.success (<anonymous>:12:5494)
    at s (<anonymous>:12:2083)
    at window.(anonymous function) (<anonymous>:12:2947)


если работать с формой на отдельной странице, то ошибок нет
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
@Jiffa Автор вопроса
Проблему решил путем открытия модалки через iframe. Есть такая опция в модуле colorbox, либо через код
$('.selector').colorbox({
   iframe: true
})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы