td의 값이 없으면 해당 tr의 특정td값 안보이게

td의 값이 없으면 해당 tr의 특정td값 안보이게

QA

td의 값이 없으면 해당 tr의 특정td값 안보이게

본문

table 이구여 tr이 많습니다!

#answer_aq 에 값이 없을경우 

.table_input_radio label 의 내용을 dispaly:none 하고싶습니다!

방법이 있을까요?ㅠ

 


<tr class="tabletr">
                <td class="table_input_radio">
                    <label><input type="checkbox" name="service_end_data"><em></em></label></td>
                <td>07</td>
                <td>
                    <select>
                    </select>
                </td>
                <td id="answer_aq">
                   
                </td>
            </tr>

이 질문에 댓글 쓰기 :

답변 6


tr이 많습니다! <-- 이 말은 <td id="answer_aq"> 이것이 여러개 나온다는 것인데 
   id=~~이렇게 여러번 사용할 수 없습니다
같은 answer_aq가 많으면 다음처럼 class를 써야합니다
<td class="answer_aq"> 
 
자바스크립트는 다음과 같이
<script>
$('.answer_aq').each(function(){
      if( !$.trim( $(this).text() ) ) $(this).siblings().eq(0).children().hide();
});
</script>

 

 

 

$(document).ready(function() {

  if ($('#answer_aq').text() == '') {

    $('.table_input_radio label').hide()

  }

});


<table>
<tr class="tabletr"> <td class="table_input_radio"> <label><input type="checkbox" name="service_end_data"><em></em></label></td> <td>07</td> <td> <select> </select> </td> <td id="answer_aq"> </td> </tr>
</table>
 
<script>
function check_td(td_id){
  var contents = $.trim($(td_id).html());
  if(contents.length<1) return false
  else return true;
}
$(function(){
  if(!check_td('#answer_aq')) {
    $('.table_input_radio>label').hide();
  }
});
</script>

 


$(function(){
 $('td[id="answer_aq"]').each(function() {
  var contents = $.trim($(this).html());
  if(contents.length<1) {
    $(this).parent('.tabletr').children('.table_input_radio>label').hide();
  }
  });
});

 

tr 값이 많군요. 위 스크립트로 적용해보세요.

그리고 W3C 사양에 id값이 중복되는건 옳지 않습니다.


<table>
    <?php if($data == null){?>
    <tr>
        내용        
    </tr>
    <?php }?>
</table>

 

이런식으로 <tr>을 조건문으로 감싸면 될것 같습니다.

 

안보여야 하는 부분이 <td>라면 colspan부분도 생각하셔야 하겠죠.

php로 할 수 없는 상황인가요?

 

<tr class="tabletr">
                <td class="table_input_radio">
                    <label><input type="checkbox" name="service_end_data"><em></em></label></td>
                <td>07</td>
                <td>
                    <select>
                    </select>
                </td>
                <td class="answer_aq">
                   
                </td>
            </tr>

 

 

$(function(){
 $('td.answer_aq').each(function() {
  var contents = $.trim($(this).html());
  if(contents.length<1) {
    $(this).parent('tr').find('td.table_input_radio>label').hide();
  }
  });
});
답변을 작성하시기 전에 로그인 해주세요.
전체 2,663
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT