cakephp и толстая коробка - как сделать изображение ссылкой, которая открывает толстую коробку

Привет! Я пытаюсь использовать толстый ящик http://jquery.com/demo/thickbox/. чтобы открыть форму на моей домашней странице.

Я хочу, чтобы ссылка, которая открывает толстый ящик, была изображением, но, будучи немного новым для всего этого, я изо всех сил пытаюсь понять, как именно это сделать. в инструкции сказано:

В атрибуте href ссылки добавьте следующий анкор:

#TB_inline

В атрибуте href после #TB_inline добавьте к якорю следующую строку запроса:

?height=300&width=300&inlineId=myOnPageContent

у меня есть это

echo $this->Html->image('123.jpg', array('alt'=>'Create a page', 'url'=>'#TB_inline?height=155&width=300&inlineId=hiddenContent&modal=true', 'class' => 'thickbox'));

Что мне нужно сделать, чтобы image.jpg был ссылкой, которая открывает толстый ящик, содержимое которого является функцией Campaigns:: толстый ящик ??

Спасибо :)


person Zaphod Beeblebrox    schedule 08.09.2011    source источник
comment
Содержимое папки уже на вашей странице? Является ли /campaigns/thickbox вашим управляющим действием?   -  person Brian Glaz    schedule 08.09.2011
comment
нет, их нет на моей странице - я не знал, что они мне нужны. Я думал, что это вызовет другой файл ctp?   -  person Zaphod Beeblebrox    schedule 08.09.2011


Ответы (1)


Чтобы создать саму ссылку:

<a href="#TB_inline?height=155&width=300&inlineId=hiddenContent&modal=true" class="thickbox">
  <?php echo $this->Html->image('123.jpg', array('alt'=>'Create a page')); ?>
</a>

Затем где-то на вашей странице вам нужно иметь div с содержимым для отображения этой ссылки:

<div id="hiddenContent">
  <p>
    <?php echo Campaigns::thickbox(); ?>
  </p>
</div>

Я предполагаю, что Campaigns::thickbox() — это статический метод, который возвращает любой контент, который вы хотите отобразить.

Я бы также добавил CSS к идентификатору hiddenContent, чтобы сначала сделать его скрытым:

#hiddenContent { display: none; }

Изменить: я отредактировал код отображения изображения. Помните: чтобы сделать изображение ссылкой, необходимо два html-тега: внешний тег «a», содержащий информацию о ссылке, и внутренний тег «img», содержащий информацию об изображении. В этом случае вы используете php для получения информации тега img от CakePHP.

person John Sparwasser    schedule 08.09.2011
comment
Спасибо чувак. Это работает для меня, я думаю, проблема в том, как я собираю свой код cakephp, у меня есть: echo $this-›Html-›image('123.jpg', array('alt'=›'Create страница', 'url'=›'#TB_inline?height=155&width=300&inlineId=hiddenContent&modal=true', 'class' =› 'thickbox')); Но это не работает - person Zaphod Beeblebrox; 08.09.2011