我的会话卡有一个表单,我想配置删除链接。 我想我可以在每行结尾处使用get请求来完成它。 但是,在cakephp 2中,它“建议”使用帖子请求更好。
没关系:
<?php
echo $this->Form->postLink(
'<button class="btn btn-danger">
<i class="icon-trash icon-white"></i>
</button>',
array(
'action' => 'deleteBasket', $plaque['id']
),
array(
'class' => 'tip',
'escape' => false,
'confirm' => 'Are you sure ?'
));
?>
除了当我使用这段代码时,它会在我的表单中生成一个表单,所以当我提交它时,它就搞砸了。我不能把它放在我的排外面。 有什么想法吗?
答案 0 :(得分:1)
从CakePHP 2.5开始,您可以在表单元素中使用postLink。您必须将选项inline
设置为false:
echo $this->Form->postLink('delete', array(
'controller' => 'somewhere',
'action' => 'delete',
$deletedID
), array(
'inline' => 'false'
));
...然后获取'postLink'块(实际的html表单标签所在的位置),最好在布局视图的底部,如下所示
echo $this->fetch('postLink');
此解决方案需要启用javascript!
inline
- 是否应以内联方式输出关联的表单标记。设置为false以将表单标记附加到“postLink”视图块。默认为true。
block
- 选择要附加表单标记的自定义块。使用此选项将覆盖内联选项。
(是的,这是一个古老的话题,但是因为我发现这个研究同样的问题,所以更新答案会很好......)
答案 1 :(得分:0)
尝试以下方法:
<?php echo $this->Form->create('Controller Name', array('url' => `array('controller' => 'Controller Name', 'action' => 'deleteBasket', $plaque['id']))); ?>`
<?php echo $this->Form->submit(arrray('class' => 'btn btn-danger', 'value' => '<i class="icon-trash icon-white"></i>', 'escape' => false, 'onclick' => 'confirm('Are you sure you want to continue')')); ?>