2012-02-18 6 views
1

jquery를 사용하여 캘린더 응용 프로그램을 만들려고합니다. 각 날짜에 대해 col이있는 테이블을 사용하고 있습니다.Jquery, 요소에 클래스 추가

<td>17</td> 

오늘 날짜에 수업을 추가하고 싶습니다. 그래도 jquery는별로 좋지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $('td').load(function(){ 
      var today = new Date(); 
      if($(this).innerText()== today.getDay(){ 
       this.addClass("today") 
      } 
     }) 
    }); 
</script> 
+0

그냥 임의의 추측입니까? –

답변

3

나는 .load()이 필요하다고 생각하지 않습니다. $(document).ready()은 필요한 것을 처리해야합니다. 날짜를 파싱해야합니다. 이 시도 :

$(document).ready(function(){ 
    $("td").each(function(){ 
     if($(this).text().trim() == new Date().getDate()){ 
      $(this).addClass("today"); 
     } 
    }); 
}); 

편집을 나는 OP의 게시물에 <td>들에 실제로 데이터를 본 후에.

+0

@ jfriend00 처음에는 잘못 생각 했으니 까. 좋았어. 나는 그 달의 날 대신에 에 전체 날짜가 있다고 가정하고있었습니다. – IanW

+0

@atbyrd Doh, 잘못된 사용자 이름입니다. : p – IanW

+0

오늘은 오늘 (18 일)입니다. –

1

는 jQuery를 방법,하지가 DOM 방법 당신이 addClass()으로이 같은 jQuery를 개체를 사용해야하는 클래스를 추가하려면 : 또한

$(this).addClass("today"); 

, 그것은 가능성이 보인다 코드 행

if($(this).innerText()== today.getDay() 

먼저 줄 끝 부분에 괄호가 없습니다. 둘째, getDay()은 요일에 대해 0에서 6까지의 정수를 반환합니다. 이게 실제로 당신이 innerText()과 비교하려고 시도한 것입니까?

관련 문제