2012-01-28 3 views
0

이 질문은 쉬운 질문처럼 들리지만 어떤 이유로 지금 당장은 알 수 없습니다.jquery의 두 라디오 버튼 사이에서 토글 클래스를 사용합니다.

<input type="radio" checked="checked" name=sport value="soccer" /> 
<input type="radio" name=sport value="basketball" /> 

내가하고 싶은 것은 내가 라디오 버튼을 클릭하면, 내가 여기에 클래스 이름을 추가 할 것인지, 그리고 경우 : 내 질문이, 이제 내 페이지에 두 개의 라디오 버튼이 있다고 할 수있다 다른 라디오 버튼을 클릭합니다. 새 라디오 버튼에 동일한 클래스를 추가하고 이전 클래스에 추가 한 클래스를 제거하고 싶습니다. ...

아무쪼록 바랍니다.

답변

5

시도해보십시오.

$("input[name='sport']").click(function(){ 
    $("input[name='sport']").removeClass('className'); 
    $(this).addClass('className'); 
}); 

Demo

3

음,이 같은 뭔가를 할 수 :

$('input:radio[name="sport"]').click(function() { 
    $(this).addClass("yourclasshere") 
      .siblings('input:radio[name="sport"]').removeClass("yourclasshere"); 
}); 

데모 : 실제 프로젝트에서 라디오 버튼은 실제로 형제 없습니다 http://jsfiddle.net/yH6ur/

경우 (레이블 요소 등으로 싸여 있기 때문에) Shankar Sangoli 's 대답.

1

이것은 모든 라디오 옵션에 적용하는 방법입니다. 그래서 매번 이름을 지정할 필요가 없습니다. 나는 이것에 대해 처음이에요. 그래서 누군가가 그것에 대해 말할 무언가를 가질 것이라고 확신합니다. 부모는 내가 버튼

$(".noradio").on('click', function(){ 
    var n=$(this).attr("name"); 
    $("input[name='"+n+"']").parent().removeClass('active').removeAttr('checked'); ; 
    $(this).parent().addClass('active').attr('checked', 'checked'); 
}); 

아, 그리고 .noradio 입력 자체에 대한 클래스이기 때문에 CSS 한 레이블입니다.

관련 문제