테스트 사이트 - 개발 중인 베타 버전입니다

php문에서 jquery 호출하는데 오류가 생깁니다. 채택완료

굼떠 2년 전 조회 2,828

php sql 포문 안에

</p>

<p>if($row["BoardIdx"] == '55') {

                        echo '<script>pre09();</script>';

                    }</p>

<p>

 

해당 구문이 있으며, 동일 페이지 하단에

</p>

<p><script>    

jQuery(function($) {

    function pre09(){

  swiper3.slideTo(9);

  }

});</p>

<p></script></p>

<p>

 

이렇게 적용을 하였는데 페이지를 띄우면 콘솔창에 pre09를 찾을 수 없다고 하는데 왜 그런걸까요?

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
2년 전

</p>

<p>$is_pre = false;</p>

<p>for($i=0;$row;$i++) {</p>

<p>    if($row['BoardIdx'] == '55') {</p>

<p>       $is_pre = true;</p>

<p>    }</p>

<p><code> }</code></p>

<p>}</p>

<p>

php가 실행되는 시점에는 javascript가 로드되지 않았기 때문에 함수를 찾을수가 없습니다.

</p>

<p><script></p>

<p>function pre09() {</p>

<p>    swiper3.slideTo(9);</p>

<p>}</p>

<p>var is_pre = <?php echo $is_pre;?>;</p>

<p>$(function() {</p>

<p>    if(is_pre === true) {</p>

<p>       pre09();</p>

<p>    }</p>

<p>});</p>

<p></script></p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

php가 먼저 실행을 하기 때문에, 자바스크립트 함수는 없는 것으로 인식이 될 것입니다. 그래서, 자바스크립트로 반복문 처리하셔야합니다.

쿼리로 반복문 처리된 부분을 php파일로 별도로 만드시고(값을 받을 수 있게 json형태로 변환..),

jquery ajax로 반복문 작성된 php파일을 호출하셔서 자바스크립트로 반복문을 처리하시면 되겠습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

jQuery(function() {}

이렇게 써보시구요

그리고 jquery 안에 함수를 넣으면 함수안에 함수를 구성한다고 해서 오류를 찾을수 없을것 같아요

그래서 따로 함수를 밖으로 빼시던지

아니면 jquery 함수를 따로만들어서 구성하시면 될것 같습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

function pre09(){
  swiper3.slideTo(9);
  } 

이렇게 함수만 넣어보세요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인