首頁 >php教程 >php手册 >修复success、error方法的一个小bug

修复success、error方法的一个小bug

WBOY
WBOY原創
2016-06-07 11:45:311803瀏覽

"本来当使用$this->assign('closeWin',true);后,再调用success或error方法,提示显示完了之后窗口就会自动关闭.但某些浏览器却不能关闭窗口"的bug的修复方法
系统Action类中的success方法和error方法存在一个小bug,算是一个不足之处.

原先设计是:当使用$this->assign('closeWin',true);后,再调用success或error方法,提示显示完了之后窗口就会自动关闭.

实际效果:某些浏览器却不能关闭窗口(比如谷歌浏览器)

原因:javascript代码不完善

解决办法:
依次展开ThinkPHP目录下的Lib/Core,找到Action.class.php文件
找到dispatchJump函数(success和error实际调用此函数).
将if($this->get('closeWin')) $this->assign('jumpUrl','javascript:window.close();');
换成if($this->get('closeWin')) $this->assign('jumpUrl','javascript:window.opener=null;window.open(\'\',\'_self\',\'\');window.close();');

AD:真正免费,域名+虚机+企业邮箱=0元

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn