2010-06-14 4 views
4

jQuery selector 문에서 <asp:Checkbox>의 클래스 속성에 어떻게 액세스합니까? 예를jQuery Checkbox 클래스 속성

<asp:CheckBox runat="server" ID="cbTest" Text="Cb Test" FieldName="1st Test Check Box" class="toggleBox"/> 

에 대한

이 :

$(':checkbox').toggleAttr("checked", true, false) 

체크 박스에 액세스하고 checked 속성에 사용자 정의 함수를 적용하지만 난에 액세스 어떻게 특정 클래스를 기반으로 필터링하려면/필터를 기반으로할까요?

+0

는 그는 게시물에서 해당 사용자 정의 기능에 대해 언급했다. – rahul

+0

오, 좋다. 나는주의를 기울이지 않았다. 나는 선택기가 플러그인 전에 올 것이라고 생각했다. – Kobi

답변

5

<asp:checkbox><input type="checkbox" />으로 표시됩니다. 따라서 element selector 다음에 :chekbox selector을 입력 한 다음 class selector을 입력하면됩니다.

$("input:checkbox.toggleBox") 

은 toggleBox라는 클래스 이름으로 원하는 체크 박스를 표시합니다.

$(':checkbox') 그렇게 $('input:checkbox') 대신 사용해야 $('*:checkbox')에 해당 class selector

참고를 참조하십시오.

+1

@mike, 참고 사항 :이 답변은 jquery와이 특정 체크 박스 예제보다 훨씬 더 많이 적용됩니다. CSS 선택기의 기본 메커니즘 중 하나입니다. 이러한 개념을 잘 배우고, 작업 전반에 걸쳐 이러한 개념을 사용하십시오. – brad

0
function chkbxch(valor) { 
      //$('.ChChecar input:checkbox').attr('checked', true); 
      $.each($('.Ch' + valor + ' input:checkbox'), function() { 
       if ($(this).attr('checked')) { 
        $(this).attr('checked', false); 
       } else { 
        $(this).attr('checked', true); 
       } 
      }); 
     } 
+2

jQuery 1.6 및 1.7에서 오류가 발생합니다. .attr()이 아닌 .prop()를 사용해야합니다. .attr()은 현재 값이 아니라 노드가 처음 생성 될 때 값을 제공합니다. – BrianFreud

+0

+1 chkbxch 게시물 및 후속 의견,이 내 문제를 해결했습니다. 덧붙여서 나는 attr이나 prop를 사용하지 않았지만 잘 작동하는 removeAttr을 사용했다. 비록 스레드가 4 살이라는 것을 알았지 만! –