2015-01-03 5 views
-1

헤더가있는 확인란을 선택하여 해당 테이블의 모든 확인란을 선택할 수있는 테이블이 있습니다. 이것은 일반적으로 매우 직설적 인 것이지만 여기서는 간단하게 작동하지 않습니다. JSfiddle에서 샘플 코드를 실행하면 작동합니다. 개발 환경에서 실행하고 상단 상자를 검사 할 때 alert()을 입력하면 경고를 표시하지만 나머지 확인란은 확인하지 않습니다. 어떤 아이디어?하나의 확인란을 선택하여 여러 개의 확인란을 선택하십시오.

<div class="content" id="content"> 
<form id="selectContent" method="post" class="grow"> 
<table class="static" style="width:1000px;"> 
    <thead> 
    <tr> 
     <th> 
     <b>Id</b> 
     </th> 
     <th> 
     <b>Name</b> 
     </th> 
     <th> 
     <label><input type="checkbox" name="select-all" id="select-all" /></label> 
     </th> 
    </tr> 
    </thead> 
    <tbody> 
    <?php 
    foreach($a as $b) 
    { 
     echo "<tr>";  
     echo "<td>$b->id</td>"; 
     echo "<td>$b->name</td>"; 
     echo "<td><label><input type='checkbox' name='id[]' value='".trim($b->id)."' class='round'></label></td>"; 
     echo "</tr>"; 

    } 
    ?> 

    </tbody> 
</table> 
</form> 


</div> 

<script> 
//Listen for click on toggle checkbox 
$('#select-all').click(function(event) { 
    if(this.checked) { 

     // Iterate each checkbox 
     $(':checkbox').each(function() { 

     this.checked = true; 

     }); 
    } 
}); 
</script> 
+3

글쎄, 내가 당신의 바이올린을 실행할 때, 당신이 말하는 것처럼 작동합니다. 즉, 다른 잘못된 것이 있다는 것을 의미합니다. 실제 코드를 표시하지 않았습니다. 그게 당신을 도우려고 힘듭니다. (SO의 요구 사항 중 하나는 문제를 설명하는 "최소한의 작업 예제"입니다. 우리가 그 정보를 볼 수 있습니까?) –

+0

그리고 JSfiddle이 작동하지 않는 곳은 다음과 같습니다. http://jsfiddle.net/04btkoL5/ – mediasurface

+0

필자는 Firebug 디버거에서 인수 목록 뒤에 "SyntaxError : missing"이라고 표시합니다. " JSFiddle이 작동하는 방식 때문에 줄 번호가 유용하지 않습니다. 디버거를 사용하여 실행하면 어떻게됩니까? –

답변

0

내가 체크 박스를 ezmark 사용하고 있기 때문에이 솔루션은 다음과 같이 스크립트의 끝에서() .change을 추가했다 : 여기

[JS fiddle][1] 

http://jsfiddle.net/pkvLqe1d/ 

그리고

내 개발 환경에서 코드입니다. 이렇게하면 검색된 체크 박스의 체크 상태가 최근 수정 된 '마스터'체크 박스의 체크 상태와 동일하게 설정됩니다.

$('#select-all').click(function() { 
$(':checkbox').prop('checked',this.checked).change(); 
}); 
관련 문제