博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
yii 中设置提示成功信息,错误提示信息,警告信息
阅读量:6946 次
发布时间:2019-06-27

本文共 4537 字,大约阅读时间需要 15 分钟。

方法一:

user->setFlash(‘success’,”Data saved!”); 设置键值名为success的临时信息.在getFlash后删除. 可以定义多种不同的键值名对象的消息.?>
user->hasFlash(‘success’)):?> 消息存在里,
user->getFlash(‘success’); ?> 输出消息内容,输出后,就不存在了.
clientScript->registerScript(‘myHideEffect’,‘$(“.info”).animate({opacity: 1.0}, 3000).fadeOut(“slow”);’,CClientScript::POS_READY);?>

方法二:

http://www.yiiframework.com/forum/index.php/topic/22105-%E8%AF%B7%E9%97%AEyii%E9%87%8C%E9%9D%A2%E6%9C%89%E6%B2%A1%E6%9C%89%E6%98%BE%E7%A4%BA%E4%B8%B4%E6%97%B6%E6%B6%88%E6%81%AF%EF%BC%8C%E5%87%A0%E7%A7%92%E5%90%8E%E8%B7%B3%E8%BD%AC%E7%9A%84%E5%8A%9F%E8%83%BD%E5%95%8A%EF%BC%9F/

1,在CWebUser扩展类中

publicfunction pushMessage($string=null, $type='successMsg')        {                if($string!=null){                        if($this->hasFlash($type))                                $old = $this->getFlash($type);                        else                                 $old = array();                        array_push($old, $string);                        $this->setFlash($type, $old);                }        }        publicfunction showPutMsg()        {                $show ='';                $successName='successMsg';                $noticeName='noticeMsg';                $errorName='errorMsg';                                if($this->hasFlash($successName)){                        $show.='
'; $msg=(array) $this->getFlash($successName); $show.='
    '; for($i=0; $i
    '; } $show.='
'; } if($this->hasFlash($noticeName)){ $show.='
'; $msg=(array) $this->getFlash($noticeName); $show.='
    '; for($i=0; $i
    '; } $show.='
'; } if($this->hasFlash($errorName)){ $show.='
'; $msg=(array) $this->getFlash($errorName); $show.='
    '; for($i=0; $i
    '; } $show.='
'; } return $show; } publicfunction putSuccessMsg($string=null) { $this->pushMessage($string,'successMsg'); } publicfunction putNoticeMsg($string=null) { $this->pushMessage($string,'noticeMsg'); } publicfunction putErrorMsg($string=null) { $this->pushMessage($string,'errorMsg'); }

2,在controller中,可以有三种提示信息

Yii::app()->user->putSuccessMsg('操作成功啦!');Yii::app()->user->putNoticeMsg('操作警告...');Yii::app()->user->putErrorMsg('操作失败了!');

3,最后在view中统一弹出便可。

admin->showPutMsg();?>

一般不要采用js弹窗形式,用户体验不是很好。

方法三:

public function redirect_message($message='成功', $status='success',$time=3, $url=false )    {              $back_color ='#ff0000';                  if($status =='success')        {            $back_color= 'blue';        }                  if(is_array($url))        {            $route=isset($url[0]) ? $url[0] : '';            $url=$this->createUrl($route,array_splice($url,1));        }        if ($url)        {            $url = "window.location.href='{
$url}'"; } else { $url = "history.back();"; } echo <<
{
$message}
页面正在跳转请等待
{
$time}
HTML; }

把代码拷入 CController.php 文件下

方法四:
http://www.yiiframework.com/forum/index.php?/topic/8949-%E8%80%81%E5%A4%A7%EF%BC%8Cyii%E6%9C%89%E6%B2%A1%E6%9C%89%E8%B1%A1qeephp%E4%B8%AD%E7%9A%84-redirectmessage%E4%BF%A1%E6%81%AF%E6%8F%90%E7%A4%BA%E5%87%BD%E6%95%B0/page__p__44880
publicfunction redirectMessage($message, $url, $delay=5, $script=''){    $this->layout=false;    if(is_array($url))    {        $route=isset($url[0])? $url[0]:'';        $url=$this->createUrl($route,array_splice($url,1));    }    return $this->render('/redirect', array(        'message'=> $message,        'url'=> $url,        'delay'=> $delay,        'script'=> $script,    ));}
把这个方法放到CBaseController中(也就是你的父控制器中,这样,所有的控制器都以调用了, 就相当于全局函数了)

From: 

转载于:https://www.cnblogs.com/imxiu/p/3452650.html

你可能感兴趣的文章
HTML5 中 div 和section以及 article 的不同之处
查看>>
阿超的烦恼 javaScript篇
查看>>
Yii2学习笔记之场景
查看>>
CS Website
查看>>
docker - 容器里安装ssh
查看>>
Ant design 组件开发
查看>>
那些让 Web 开发者们深感意外的事情
查看>>
完整性约束
查看>>
docker 17.09.0-ce 启动更换网络地址
查看>>
关于《大道至简》第六章的收获
查看>>
JavaWeb部分面试题
查看>>
mac osx 系统开发php 的一些工具
查看>>
Tcp的三次握手,以及原理详解
查看>>
sprintboot 中占位符及多环境配置
查看>>
Oracle资源
查看>>
你需要一点点CIL
查看>>
Java中的位运算
查看>>
java连接mysql的一个小例子
查看>>
laravel queue 修改之后不生效的坑
查看>>
[USACO07JAN]Balanced Lineup
查看>>