2011-01-15 3 views
1

나는이 다음 코드 : 내가 그것을 특정 ID가 아니라 페이지에있는 모든 체크 박스를 대상으로 어떻게합니까jQuery를 - 타겟팅 특정 ID의

<script type="text/javascript" language="javascript"> 
$(document).ready(function() { 
$("input:checkbox").click(function(){ 
    var group = "input:checkbox[name='"+$(this).attr("name")+"']"; 
    $(group).attr("checked",false); 
    $(this).attr("checked",true); 
}); 
}); 
</script>        

? thisgroup 수표의 그룹/컨테이너

$('#thisgroup :checkbox').... 

:

즉, 체크 박스의 그룹을 대상으로 시도하는 메신저 경우는 #thisgroup 당신이 선택을 사용할 수 있습니다

+0

처럼, 또한 설정할 수 있습니다 볼 수 있습니다 선택자? – BoltClock

+0

나는 그렇게 생각한다.이 문을 하나의 표적으로 만 바꾸는 방법은 확실하지 않다. – Cecil

답변

0

checked 속성을 false로 설정하는 대신 .removeAttr ("checked")를 사용합니다.

$(function() { 
     $("input:checkbox").change(function() { 
      var checkname = $(this).attr("name"); 
      $("input:checkbox[name='" + checkname + "']").removeAttr("checked"); 
      this.checked = true; 
     }); 
    }); 

같은 뭔가 당신은 당신이 '그룹'언급하는 특정 용기 내부의 체크 박스를 대상으로하려는 경우가 working demo

다음

$("#checkboxcontainer input:checkbox").change(function(){ 
    // your code goes here 
}); 
+0

해당 진술을 특정 그룹의 확인란으로 지정할 수 있습니까? #이 그룹이라고? – Cecil

+0

업데이트 된 답변보기 – rahul

+0

그게 치료를 잘 ... 고마워요 :) – Cecil

1

건배입니다 상자.

+0

나는 모든 스태틱을 바꿨다. 그러나 그것은 작동하지 않는 것처럼 보인다. 어떤 그룹 라인이 var 그룹 = 입력 : 체크 박스 [name = ' "+ $ (this) .attr ("name ") +"'] "; 내가 var group = "#thisgroup : checkbox [name = '"+ $ (this) .attr ("name") + "']"로 변경해야합니까? – Cecil

2

당신은 실제로 간단한 일이를 다시 작성할 수 있습니다 : 이것은 가정입니다

$(this).attr('checked', true).siblings().attr('checked', false); 

체크 박스 모두가 공유 한 부모가.