Maison > développement back-end > tutoriel php > ThinkPHP控制器里javascript代码不能执行的解决方法_PHP

ThinkPHP控制器里javascript代码不能执行的解决方法_PHP

WBOY
Libérer: 2016-05-31 19:27:23
original
805 Les gens l'ont consulté

本文实例讲述了ThinkPHP控制器里javascript代码不能执行的解决方法。分享给大家供大家参考。具体方法如下:

这里实例分析一下thinkphp在控制器里的网页特效代码不能执行解决方法,就拿“退出”这一项来说吧,我的“退出系统”链接是写到左边的框架里的,用js动态生成的。也就是说,没法通过链接里的target来指定。

代码如下:

$this->assign('jumpurl',__url__.'/login');
$this->success("注销成功!");


这样写的话,要跳转的页面就显示在了右框架里了,把js代码写到url里面不行,我把这两行代码注释掉了。直接用:

代码如下:

echo "<script>window.top.location.href='$url';</script>";


这样也不行,一方面url里面没法用__app__这些常量,另一方面,最后执行出来的结果是竟是把<script>标签去掉,剩下的直接输出!<br /> <p class="codetitle"> 代码如下:<p class="codebody" id="code16556">(window.top.location.href='index/login';)<br /> 我查了action类里的success函数,没有找到相关的参数。 <p>后来突然想到一个问题,tp里的标签都是以尖括号(<>)来包含的,我在控制器里写的<script>是不是被当作标签给解析了呢?于是我就重新写了第二段代码:<br /> <p class="codetitle"> 代码如下:<p class="codebody" id="code56077">echo '<literal><script>alert("退出成功");top.location.href="login";</script>';
这样就行了。

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal