Вы здесь

как в модальное окно передать параметры?

0

в drupal 8 подключил core/drupal.dialog.ajax и через ссылку пытаюсь передавать параметры модальному окну. и ничего не получается. подскажите, как быть?
рабочая ссылка у меня выглядит так:

<a class="use-ajax" data-dialog-options="" data-dialog-type="modal" href="1">OPEN WINDOW</a>

и, если data-dialog-options="{"width": 700}" - то окно не открывается...

data-dialog-options принимает настройки jQuery Dialog API в формате encoded json... а вот как это - не пойму что то... хеелп? )

Версия Drupal: 
8.x
Категория: 
AJAX
Вопрос задан 10.11.2016 - 11:31

Ответы

0

http://xandeadx.ru/blog/drupal/730
Так как вы описали атрибуты для браузера будет data-dialog-options="{"
В DOM таким образом для ссылки получится три атрибута: data-dialog-options равный "{", width": равный "" и 700}" равный "" - вместо одного правильно записанного data-dialog-options.

Ответ дан 10.11.2016 - 20:07
Аватар пользователя drupby
drupby
456

странно, что не пробовал такой вариант, хоть и статью видел) сработало.
Теперь вопрос приобретает несколько другую форму))
Не могу вставить два параметра. разделители " , " и " ; " и " " не работают.

Комментарий оставлен 11.11.2016 - 10:38

А ссылку лучше формировать так:

use Drupal\Core\Link;

$modal_link = Link::fromTextAndUrl(t('Open window'), 'node/2');
$modal_link = $modal_link->toRenderable();
$modal_link['#attributes'] = [
  'class' => ['use-ajax'], 
  'data-accepts' => 'application/vnd.drupal-modal', 
  'data-dialog-options' => '{"width":700,"height":200}',
];
Комментарий оставлен 11.11.2016 - 11:14

Это вообще вариант для формирования ссылки для последующего вывода в шаблоне.

Комментарий оставлен 11.11.2016 - 11:54
0

Все заработало. Есть своеобразные особенности при написании ссылки через CKEditor. НО понимание пришло! РААдость! )))

<a class="use-ajax" data-dialog-options="{&quot;width&quot;:&quot;auto&quot;,&quot;height&quot;:&quot;auto&quot;}" data-dialog-type="modal" href="1">OPEN WINDOW</a>

Еще вопрос.) как сформировать такую ссылку к wtbform в twig шаблоне, используя функции отсюда

буду очень благодарен за ответы т.к. не получается такое сделать уже долго...

Ответ дан 11.11.2016 - 11:14