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

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

Аватар пользователя digital_sword digital_sword 2 ноября 2017 в 22:47

Вопрос по d8.
Сейчас рабочий вариант
<a href="/form" class="use-ajax" data-dialog-type="modal">link</a>
Но что-то вызывается с задержкой секунда-две. Это самый правильный вариант? (колорбокс на сайте уже есть, через него может?).

Комментарии

Аватар пользователя gun_dose gun_dose 3 ноября 2017 в 0:09

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

Ну и как запасной вариант - сделать очень красивый лоадер)))

Аватар пользователя BatKor BatKor 3 ноября 2017 в 9:37

Тут имеем спросить у вас ТС, что вы имеете ввиду под попапом? Попап может быть и изначально отрендерин и при клике куда нибудь меняется CSS свойство, и вариант который реализован через аякс, где изначально попапа в HTML структуре нет.

Аватар пользователя gun_dose gun_dose 3 ноября 2017 в 10:30

Bootstrap modal так работает (это не модуль, а одна из фич бутстрапа). Плюсы - работает быстро и легко. Минусы по сравнению с аяксом - в аяксовые формы не спамят.

Аватар пользователя BatKor BatKor 3 ноября 2017 в 12:02

Bootstrap modal вы имеете введу нативный диалог модал? который реализует ТС? с помощью Moda; API если да то это ничем не отличается от ajax, хотя возможно я ошибаюсь, но не думаю.
Но вопрос я поставил не об этом, а том что ТС вообще понимает выражение модальное окно.

Аватар пользователя digital_sword digital_sword 4 ноября 2017 в 0:04

 sas@drupal.org? спасибо, но не хотелось форму на странице заводить (скрытую).

gun_dose, тема оформления у меня на бутстрапе. bootstrap.js, jquery.min.js, bootstrap.css то есть подключены. Не ясно из вашего примера (там есть кнопки но нет ссылок) как должна выглядеть ссылка, чтобы с помощью Bootstrap modal картинку выводила. Или вебформу, или страницу...

И может на Bootstrap modal есть решения для галерей?

Или в Bootstrap modal, в отличие от ajax, все элементы (например вызываемая вебформа, или полноразмерное изображение) уже должны быть на странице, только скрыты? Тогда такой вариант также не подходит...

[/quote]

Аватар пользователя gun_dose gun_dose 4 ноября 2017 в 10:22

На той же странице представлен код и дано полное объяснение, что к чему. Если нужна не кнопка а ссылка, то в данном случае достаточно тег button заменить на а

Аватар пользователя sas@drupal.org sas@drupal.org 4 ноября 2017 в 7:18

Всего 2 подхода - скрытие элементы и заугрузка при нажатии на ссыль. Кстати для гелерей есть строенная ajax загрузка здесь https://owlcarousel2.github.io/OwlCarousel2/index.html + можно колобка повестить для всплывашки.

Аватар пользователя digital_sword digital_sword 4 ноября 2017 в 8:06

<a href="mailto:sas@drupal.org">sas@drupal.org</a> wrote:

Всего 2 подхода - скрытие элементы и заугрузка при нажатии на ссыль

Да, это я понял.
Bootstrap modal - показывание скрытых элементов
colorbox-inline - показывание скрытых элементов
colorbox_load - загрузка при нажатии на ссылку
"use-ajax" data-dialog-type="modal" - загрузка при нажатии на ссылку

все верно?