Как я могу с помощью FormHelper или другого метода визуализировать ссылку на изображение, которая запускает javascript при нажатии? - PullRequest
0 голосов
/ 11 мая 2010

Справочная информация:

Я хочу сделать это:

<a href="javascript:myfunction('Somevar')"><img src="some.png" width="20" height="20" border="0" /></a>  

в приложении CakePHP. Примечание: эта ссылка вообще не связана с моделью, это всего лишь часть формы, отправляемая за пределы сайта.

Я не уверен, как поступить: я видел это на сайте CakePHP, но со всем, что происходит в пироге, я не уверен во всем бизнесе вызова javascript. Какой лучший способ создать такую ​​вещь?

РЕДАКТИРОВАТЬ: Cake 1.2 это то, с чем я работаю.

1 Ответ

0 голосов
/ 11 мая 2010

Нет проблем передать функцию Javascript в качестве второго параметра в HtmlHelper::link. Это должно сделать трюк:

echo $html->link(
    $html->image('some.png'),
    "javascript:myfunction('Somevar')",
    array('escape'=>false)
);

Это вызывает HtmlHelper::link, передавая изображение (сгенерированное HtmlHelper::image) в качестве HTML-кода, для которого нужно обернуть <a />, функцию Javascript в качестве действия ссылки, и информируя Cake о том, что вы не должны избегать HTML, который вы передали.

Обновление:
Вот фрагмент кода для Cake 1.2:

echo $html->link(
    $html->image('some.png'),
    "javascript:myfunction('Somevar')",
    null, null, false
);

Последний false параметр HtmlHelper::link указывает Cake не выходить из HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...