您好,登錄后才能下訂單哦!
本篇內容主要講解“ThinkPHP控制器里javascript代碼不能執行的問題如何解決”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“ThinkPHP控制器里javascript代碼不能執行的問題如何解決”吧!
這里實例分析一下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控制器里javascript代碼不能執行的問題如何解決”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。