Cakephp HTMLhelper中带有$confirmMessage警报的图像链接-可能



是否可以使用CakePHP中的html助手创建一个带有弹出警报[$confirmMessage]链接的图像?

这是我当前的文本链接:

$this->Html->link('Clear list', array('controller' => 'items', 'action' => 'clearlist', $model['Model']['id']), array(), 'Clear list?')

这就是图像助手如何创建带有链接的图像:

echo $this->Html->image("recipes/6.jpg", array( "alt" => "Brownies", 'url' => array('controller' => 'recipes', 'action' => 'view', 6)));

然而,这只允许使用一个htmlattributes数组作为链接的参数。

$confirmMessage警报不是html属性,是吗?

这是我尝试过的代码:

echo $this->Html->link($this->Html->image("clearall.png", array("alt" => "Clear list")), array('controller' => 'items', 'action' => 'clearlist', $model['Model']['id']), array(), 'Clear list?');

然而,这段代码将我的img的正确html打印为文本:

<img src="/img/clearall.png" alt="Clear list" />

在这种情况下,我必须放弃htmlhelper吗?

CakePHP使用Html帮助程序做到了这一点,您真的很接近!

<?php echo $this->Html->link($this->Html->image('clearall.png', array(
                                                    'alt' => 'Clear list')
                                               ), array(
                                                    'controller' => 'items',
                                                    'action' => 'clearlist',
                                                    $model['Model']['id']
                                               ), array(
                                                    'escape' => false,
                                                    'confirm' => 'Clear list?'
                                               )); ?>

你也可以在没有这样的助手的情况下完成:

<a href="/items/clearlist/<?php echo $model['Model']['id']; ?>"
   onclick="return confirm(&#039;Clear list?&#039;);">
    <img src="/img/clearall.png" alt="Clear list" />
</a>

感谢ADmad和rtconner在IRC中向我展示了这一点。

最新更新