解雇控制会话闪光()输出在CakePHP 1.2
应用程序,我使用添加CakePHP中
<?php $session->flash();?>
像“记录主编的”输出消息。它运作良好。
但是,我想添加一个名为“关闭”的链接,将淡出该消息。我知道如何构建链接,但我不知道如何插入flass消息的输出。
该闪光消息包装自己在DIV tag
。我想将我的解雇代码插入该div,但我不知道如何。
解雇控制会话闪光()输出在CakePHP 1.2
应用程序,我使用添加CakePHP中
<?php $session->flash();?>
像“记录主编的”输出消息。它运作良好。
但是,我想添加一个名为“关闭”的链接,将淡出该消息。我知道如何构建链接,但我不知道如何插入flass消息的输出。
该闪光消息包装自己在DIV tag
。我想将我的解雇代码插入该div,但我不知道如何。
想通了这一点: 在你的布局文件夹中创建一个新的布局:
layouts/message.ctp
在这种布局中,包括了通话输出内容:
<?php echo $content_for_layout; ?>
然后,当你设置闪光消息,指定要使用的布局:
$this->Session->setFlash('Your record has been created! Wicked!','message');
要使用setflash功能。如果您将setflash传递给$ default的空字符串,它将不会将您的消息包装在div中,而只是按原样存储它。这样你可以显示你想要的任何标记,或者作为贾斯汀发布的,你可以使用另一个查看页面来显示你的消息,这样你就不会混淆你的视图和控制器。
默认的做法是在/ app/views/layouts中创建一个flash.ctp。这将覆盖您可以在/ cake/libs/view/layouts中找到的默认flash.ctp。所以你不需要使用额外的参数。
btw:这适用于所有CakePHP标准视图和布局。
您可以使用jQuery实现这一目标:
$(document).ready(function() {
$("#flashMessage").each(function() {
$close = $("<span class='close'>Close</span>");
$close.click(function() {
$(this).parent().hide("slow");
});
$(this).append($close);
});
});
您将需要相当起来带着几分CSS的,但我敢肯定你的想法。
我不确定为什么我的php代码行没有出现。看起来像卫生洗涤剂中的一个错误。 – Justin 2008-09-24 15:59:05