반복문 오류

반복문 오류

QA

반복문 오류

답변 1

본문

게시판 리스트에 게시글마다 마감시간이 얼마나 남았는지 실시간초단위로 나오는 형태를 만들고 싶은건데요.

반복문안에 소스를 넣었는데 한번만 실행 하네요.

첫번째 게시물만 정상적으로 시간이 나오고 밑의 게시물들은 시간이 안나옵니다.

 

디자인만 해서 잘 모르지만 ID값은 class처럼 반복이 안되니까? 그런것 같은데 안되는 원인이 맞는지 모르겠네요.


        document.getElementById("counter1").innerHTML = d;
       document.getElementById("counter2").innerHTML = h;
       document.getElementById("counter3").innerHTML = m;
      document.getElementById("counter4").innerHTML = s;

이런부분을 변경해야하나 싶은데 어떻게 해야 모든 게시글에 시간이 나올수 있련지요? ㅜ ㅜ

 

 

 

--------관련 부분 전문 ----


    <?php
      $targetDate = new datetime($list[$i]["wr_3"]); // 여분필드 목표시간
       $formatDate = $targetDate -> format("F d, Y H:i:s"); // 여분필드 목표시간 포맷
    ?>
     <script>
      //디데이 종료 일자 설정
      var countDownDate = new Date("<?php echo $formatDate ?>").getTime();
       //1초마다 갱신되도록 함수 생성,실행
      var x = setInterval(function() {
        // 오늘 날짜 등록
        var now = new Date().getTime();
          // 종료일자에서 현재일자를 뺀 시간
        var distance = countDownDate - now;
          // 각 변수에 일, 시, 분, 초를 등록
        var d = Math.floor(distance / (1000 * 60 * 60 * 24));
        var h = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
       var m = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
        var s = Math.floor((distance % (1000 * 60)) / 1000);
        document.getElementById("counter1").innerHTML = d;
       document.getElementById("counter2").innerHTML = h;
       document.getElementById("counter3").innerHTML = m;
      document.getElementById("counter4").innerHTML = s;
      });
      </script>
              <div id=count>
               <font color="#f82c8c" size="2"><img src='/img/ic_lpt3.png' alt=''> <b> 완료까지
               <span id=counter1></span>일
               <span id=counter2></span> :
               <span id=counter3></span> :
               <span id=counter4></span> 남음</b>
               </font>
             </div>
             <script>getTime()</script>

이 질문에 댓글 쓰기 :

답변 1

소스가 파악하기 힘들어 도움이 되고자 하는 말을 전하자면

 

<?php for($i=0; $i<5; $i++){?>

 <div id="count_<?php echo  $i ?>"></div> // count_0 count_1 ... count_4 까지 만듦.

<?php } ?>

<script>

..

 for(var i = 0; i < 5; i++){

 $("count_" + i ).제어();

}

..

</script>

 

이런식으로 활용하실 수 있습니다

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 2
© SIRSOFT
현재 페이지 제일 처음으로