2012-01-24 3 views
-2

가능한 중복 사용하여 비어있는 경우 :
hide row if it contains empty columns숨기기 테이블 행의 열 중 하나는 CSS를

이 테이블에 빈 셀이 포함 된 행을 내가 가지고 .. CSS를 사용하여 숨길 수 있습니다을 jQuery를 시도하고 그것의 지금 작동하지 않습니다. 이것은 내가 무엇을 사용하고 그것은 아무것도하지 않습니다!

$('.EventDetail tr').each(function(){  
    if ($('td:empty',this).length > 0)) 
    $(this).hide(); 
}); 

이 jQuery에는 아무런 문제가 없습니다. 선택한 행에 대해 display:none을 수행 할 수 있는지 확인하고 싶습니다. 그것은 CSS를 사용하여 달성 가능한 것입니까?

<table cellpadding="10" class ="EventDetail"> 
    <tr> 
     <td class="TableFields"><em>Who Should Enroll?:</em></td> 
     <td>Everyone 18 and older who would like to attend</td> 
    </tr>  
    <tr> 
     <td class="TableFields"><em>Handicapped Access:</em></td> 
     <td>Yes</td> 
    </tr> 
    <tr> 
     <td class="TableFields"><em>Parking Notes:</em></td> 
     <td></td> 
    </tr> 
    <tr> 
     <td class="TableFields"><em>Instructor:</em></td> 
     <td>John Filler</td> 
    </tr> 
</table> 
+2

플래그가 지정되었습니다. 당신은 4 시간 전에이 같은 질문을했습니다 ... http://stackoverflow.com/questions/8978812 –

+0

나는 이것을 중복으로 결론 짓기 위해 투표했습니다. CSS에서이 작업을 수행하려는 경우 왜 jQuery와 JavaScript로 질문에 태그를 추가 했습니까? 왜 jQuery 코드 샘플을 포함합니까? 전체적인 질문에 대해 "_just_ CSS로이 행을 숨길 수 있습니까?"라고 말해야합니다. – nnnnnn

+0

거지가 선택자가 될 수 없기 때문에 냉소적이지 않게 시작하십시오. 그런 다음 질문을 편집하여 개선하고 의견 시스템을 통해 추가 도움을 받으십시오. – mrtsherman

답변

5

이 선택이 그것을 어떻게해야 ...

$('.EventDetail tr:has(td:empty)').hide(); 

jsFiddle.

:empty 선택기는 이 아닌 자식 노드가있는 요소를 찾습니다. 가능한 경우에는 공백이있을 수 있습니다,하지만 당신은 여전히 ​​...

$('.EventDetail tr').filter(function() { 
    return $(this).find('td').filter(function() { 
     return ! $.trim($(this).text()); 
    }).length; 
}).hide(); 

jsFiddle를, 빈 그것을 고려와 같은 뭔가를하려고합니다.

+1

감사합니다 알렉스, 이것은 마술을 일으켰다. 공백이 나를 죽였다. 저에게 올바른 방향으로 나아가는 모든 지역 사회 구성원들에게 감사드립니다! –

관련 문제