2011-10-28 3 views
1
<table> 
    <tr><td>aaa</td><td><input type="checkbox" name="yes[]" value="aaa" checked /></td></tr> 
    <tr><td>bbb</td><td><input type="checkbox" name="yes[]" value="bbb" /></td></tr> 
    <tr><td>ccc</td><td><input type="checkbox" name="yes[]" value="ccc" checked /></td></tr> 
</table> 


<span id="delete">delete</span> 

var val = $(input[checkbox]).val(); 
alert(val); 

$('#delete').click(function(){ 
    //here should be delete all TR if input is not checked. how? 
}) 

어떻게 모든 체크 된 값을 표시 할 수 있습니까?이 TR의 입력이 선택되지 않은 경우 어떻게 모든 TR을 삭제할 수 있습니까?모든 체크 된 값을 표시하고 제거하십시오 TR

라이브 예 : http://jsfiddle.net/pimvdb/RYrA4/3/을 : http://jsfiddle.net/RYrA4/1/

답변

3

는 부모에게 tr의를 선택하고 마지막으로 제거, 적절한 요소를 선택합니다.

$('#delete').click(function(){ 
    $(":checkbox[name='yes[]']:not(:checked)") // select non-checked checkboxes 
     .parent() // <td>s (parents of checkboxes) 
     .parent() // <tr>s (parents of <td>s) 
     .remove(); // remove <tr>s 
}) 
+0

+1 및 예 : –

+0

감사합니다. 표시되는 모든 값에 대해 경고를 표시하려면 어떻게해야합니까? –

+1

@ Paul Attuck :'.map'을 사용하여 요소를 값에 매핑 할 수 있습니다 : http://jsfiddle.net/pimvdb/RYrA4/6/. – pimvdb

3

슈퍼 간단한 방법 :

$('#delete').click(function(){ 
    $(":checkbox[name='yes[]']:not(:checked)").parents('tr').remove(); 
}) 

당신은

+0

더 우아한'.parents ("tr")'에 +1. – pimvdb

+0

감사합니다. 그리고 모든 경고 값을 어떻게 표시 할 수 있습니까? –

2

jQuery의 closest 방법은 가장 가까운 태그를 발견 :) 뭔가를 당신이 더 많은 것을 달성하고자하는 경우,에 "각"루프을 변화시킬 수 현재 요소에서 시작하여 트리를 진행하는 선택기로 정의됩니다.

$('#delete').click(function(){ 
    $("input:checkbox[name='yes[]']:not(:checked)").closest('tr').remove(); 
}) 
+0

공백으로 인해이 공간이 하위 선택자가됩니다. – pimvdb

+0

@pimvdb - 오타가 수정되었습니다. –

+0

감사합니다. 어떻게 모든 체크 값을 경고로 표시 할 수 있습니까? –

1

선택한 각 확인란에 대해 경고를 표시 하시겠습니까? 아니면 하나의 경고만으로 충분합니까? 개별 경고의 경우 :

$("#delete").click(function() 
{ 
    var allCheckBoxes = $("input:checkbox[name='yes[]']"), 
    selectedCheckBoxes = allCheckBoxes.filter(":checked"), 
    unselectedCheckboxes = allCheckBoxes.not(":checked"); 
    unselectedCheckboxes.closest("tr").remove(); 
    selectedCheckBoxes.each(function() 
          { 
           alert(this.value); 
          }); 

} 

단일 경고의 경우 "각"기능에서 쉼표로 구분 된 문자열을 작성한 다음 경고 할 수 있습니다.

관련 문제