>  기사  >  백엔드 개발  >  ThinkPHP 컨트롤러의 자바스크립트 코드가 실행되지 않는 문제 해결

ThinkPHP 컨트롤러의 자바스크립트 코드가 실행되지 않는 문제 해결

不言
不言원래의
2018-06-06 15:01:452452검색

이 글에서는 ThinkPHP 컨트롤러의 자바스크립트 코드가 실행되지 않는 문제에 대한 해결책을 주로 소개합니다. 자바스크립트 태그가 파싱되는 문제를 해결하기 위해 ThinkPHP의 242ea1024ad38c613404ea04d9256314 태그를 사용하는 것은 매우 실용적인 기술입니다. it

이 글의 예시에서는 ThinkPHP 컨트롤러의 자바스크립트 코드가 실행되지 않는 문제에 대한 해결 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 방법은 다음과 같습니다.

다음은 컨트롤러에 있는 thinkphp의 웹페이지 특수 효과 코드가 실행되지 않는 문제에 대한 솔루션 분석 예입니다. 내 "Exit System"을 예로 들어보겠습니다. 링크는 왼쪽 프레임에 작성되며 js를 사용하여 동적으로 생성됩니다. 즉, 링크의 대상을 통해서는 지정할 수 없습니다.

코드를 복사하세요 코드는 다음과 같습니다

$this->assign(&#39;jumpurl&#39;,__url__.&#39;/login&#39;);<br>$this->success("注销成功!");

이렇게 작성하시면 점프할 페이지가 오른쪽 프레임에 표시가 되서 url에 js 코드를 적으면 작동하지 않습니다. 이 두 줄의 코드를 주석 처리했습니다. 직접 사용:

코드 복사 코드는 다음과 같습니다.

echo "<script>window.top.location.href=&#39;$url&#39;;</script>";

이 역시 작동하지 않습니다. 한편으로는 __app__ 상수를 URL에서 사용할 수 없습니다. 결과는 3f1c4e4b6b16bbbd69b2ee476dc4f83a입니다. 태그를 제거하고 나머지는 직접 출력하세요!

코드 복사 코드는 다음과 같습니다.

(window.top.location.href=&#39;index/login&#39;;)

액션 클래스에서 성공 함수를 확인했는데 관련 매개변수를 찾지 못했습니다.

그러다 문득 생각난 질문이 있습니다. tp의 태그는 모두 꺾쇠괄호(a8093152e673feb7aba1828c43532094)로 둘러싸여 있습니다. 컨트롤러에 작성한 3f1c4e4b6b16bbbd69b2ee476dc4f83a가 태그로 해석되는 걸까요? 그래서 두 번째 코드를 다시 작성했습니다.

코드 복사 코드는 다음과 같습니다.

echo &#39;<literal><script>alert("退出成功");top.location.href="login";</script></literal>&#39;;

그렇습니다.

관련 추천 :

Thinkphp는 엔트리 파일을 통해 모바일 단말기와 PC 단말기를 어떻게 구분하나요?

위 내용은 ThinkPHP 컨트롤러의 자바스크립트 코드가 실행되지 않는 문제 해결의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.