在FormHelper :: postLink()中禁用转义会中断警报确认

时间:2013-04-28 05:31:17

标签: php html cakephp cakephp-2.0

当我尝试在postlink帮助程序中将escape设置为false时,JavaScript警报似乎在Chrome中中断,不知道为什么我没有收到任何控制台错误,它只是在没有初始警报的情况下触发操作。

echo $this->Form->postLink('<i class="icon-trash"></i> Delete',
    array('controller' => 'documents', 'action' => 'delete', $document['id']),
    array('escape' => false),
    null, __('Are you sure you want to delete # %s?', $document['file'])
);

有什么建议吗?

1 个答案:

答案 0 :(得分:8)

参数数量错误

通过添加escape => false选项,您忘记删除第三个参数的占位符null。因此,您现在正在传递五个参数。

删除null,它应该有效;

echo $this->Form->postLink(
    // title
    '<i class="icon-trash"></i> Delete',

    // URL
    array('controller' => 'documents', 'action' => 'delete', $document['id']),

    // Options
    array('escape' => false),

    // confirmMessage
    __('Are you sure you want to delete # %s?', $document['file'])
);

参见文档; FormHelper::postLink()