ThinkPHP控制器里javascript代码不能执行的解决方法
2014-11-22 00:00
525 查看
本文实例讲述了ThinkPHP控制器里javascript代码不能执行的解决方法。分享给大家供大家参考。具体方法如下:
这里实例分析一下thinkphp在控制器里的网页特效代码不能执行解决方法,就拿“退出”这一项来说吧,我的“退出系统”链接是写到左边的框架里的,用js动态生成的。也就是说,没法通过链接里的target来指定。
这样写的话,要跳转的页面就显示在了右框架里了,把js代码写到url里面不行,我把这两行代码注释掉了。直接用:
这样也不行,一方面url里面没法用__app__这些常量,另一方面,最后执行出来的结果是竟是把<script>标签去掉,剩下的直接输出!
我查了action类里的success函数,没有找到相关的参数。
后来突然想到一个问题,tp里的标签都是以尖括号(<>)来包含的,我在控制器里写的<script>是不是被当作标签给解析了呢?于是我就重新写了第二段代码:
这样就行了。
希望本文所述对大家的ThinkPHP框架程序设计有所帮助。
这里实例分析一下thinkphp在控制器里的网页特效代码不能执行解决方法,就拿“退出”这一项来说吧,我的“退出系统”链接是写到左边的框架里的,用js动态生成的。也就是说,没法通过链接里的target来指定。
$this->assign('jumpurl',__url__.'/login');<br>$this->success("注销成功!");
这样写的话,要跳转的页面就显示在了右框架里了,把js代码写到url里面不行,我把这两行代码注释掉了。直接用:
echo "<script>window.top.location.href='$url';</script>";
这样也不行,一方面url里面没法用__app__这些常量,另一方面,最后执行出来的结果是竟是把<script>标签去掉,剩下的直接输出!
(window.top.location.href='index/login';)
我查了action类里的success函数,没有找到相关的参数。
后来突然想到一个问题,tp里的标签都是以尖括号(<>)来包含的,我在控制器里写的<script>是不是被当作标签给解析了呢?于是我就重新写了第二段代码:
echo '<literal><script>alert("退出成功");top.location.href="login";</script></literal>';
这样就行了。
希望本文所述对大家的ThinkPHP框架程序设计有所帮助。
相关文章推荐
- ThinkPHP控制器里javascript代码不能执行的解决方法
- JavaScript出现“不能执行已释放的Script代码”错误的原因及解决办法
- 关于IE抛出"不能执行已释放 script 的代码"的解决方法
- JavaScript出现“不能执行已释放的Script代码”错误的原因及解决办法
- JavaScript出现“不能执行已释放的Script代码”错误的原因及解决办法
- 遇到"不能执行已释放的 Script 的代码" 的问题和解决方法
- JavaScript出现“不能执行已释放的Script代码”错误的原因及解决办法
- JavaScript出现“不能执行已释放的Script代码”错误的原因及解决办法
- javascript代码在ie8里报错 document.getElementById(...) 为空或不是对象的解决方法 原创
- “不能执行已释放的Script代码”错误的原因及解决办法
- hibernate先删除数据,紧接着执行插入时的异常解决之道——中间不能调用flush()、clear()等方法
- CSDN 博客上不能插入一段SQL程序代码 解决方法
- 不能执行查询,因为一些文件丢失或未注册 解决方法
- javascript createElement()创建input不能设置name属性的解决方法
- 正试图在 os 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。问题的解决方法!
- ISA 2004 防火墙自己不能上网,提示"错误代码:12206 代理链循环"的解决方法
- javascript createElement()创建input不能设置name属性的解决方法
- 出现“不能执行已释放的Script代码”错误的原因及解决办法
- 用ASP将JAVASCRIPT代码写入客户端执行的一种简易方法。。。
- 解决this.disabled=true;不能执行服务器端代码的问题(点击后按钮变不可用状态)