2011-11-26 3 views
0

라디오 버튼을 선택하면 "X를 선택하지 않았습니다."가 숨기지 않습니다.클래스를 동적으로 숨기는 라디오 버튼

스크립트

$('input').live('change', function() 
{ 
    if($('debt:radio:checked')) { 
    $('.debt1').html('<span style="display:none"></span>');} 
    if($('assets:radio:checked')) { 
    $('.assets1').html('<span style="display:none"></span>');} 
    if($('kids:radio:checked')) { 
    $('.kids1').html('<span style="display:none"></span>');} 
}); 

HTML : 여기

Debt: <br /> 
    <input name="debt" type="radio" value="0" /> 
    <input name="debt" type="radio" value="-1" /> 
    <input name="debt" type="radio" value="-2" /><br /> 


    Kids:<br /> 
    <input name="kids" type="radio" value="0" /> 
    <input name="kids" type="radio" value="1" /> 
    <input name="kids" type="radio" value="3" /><br /> 


    Assets:<br /> 
    <input name="assets" type="radio" value="4" /> 
    <input name="assets" type="radio" value="5" /> 
    <input name="assets" type="radio" value="6" /><br /> 

    <br /> 

    <span class="debt1">You have not selected debt</span><br /> 
    <span class="kids1">You have not selected kids</span><br /> 
    <span class="assets1">You have not selected assets</span><br /> 

샘플 : 여기 http://jsfiddle.net/ZJpRj/1/

근무 예 : http://jsfiddle.net/ZJpRj/6/

답변

1

첫째, 당신은 당신의 바이올린에 jQuery를 선택하지 않은 .

그런 다음 if 문을 많이 변경해야합니다.

if($('input[name="debt"]:radio:checked').length > 0) { 

귀하의 코드는 몇 가지 문제가 있습니다

if($('debt:radio:checked')) { 

더 이런 일이어야한다. 먼저 선택기 debt:radio:checked. dept을 넣는 것은 <dept></dept>과 같은 요소와 일치 할 것이며 dept라는 이름의 입력과는 일치하지 않을 것입니다. 그리고 두 번째로, if($("..."))은 항상 true를 반환합니다. 왜냐하면 jquery는 항상 객체를 반환하기 때문입니다. 해당 개체에 요소가 포함되어 있는지 확인하고 싶기 때문에 length을 사용합니다.

+0

감사 남자. 나는 크기를 테스트했지만 길이는 작동 할 것입니다. – Dan

+0

또한'$ ('. debt1'). hide()'해야합니다. –

+0

좋아, 데이비드, 그만큼 짧아. 고마워. – Dan

2

WORKING DEMO

CODE : 당신의 도움에 대한

$('input').live('change', function() { 
    if ($('input[name=debt]:radio').is(':checked')) { 
     $('.debt1').html(''); 
    } 
    if ($('input[name=kids]:radio').is(':checked')) { 
     $('.kids1').html(''); 
    } 
    if ($('input[name=assets]:radio').is(':checked')) { 
     $('.assets1').html(''); 
    } 
}); 
+0

덕분에 roXon은 훌륭하게 작동합니다. 유형을 이름으로 바꿨습니다 (8 행). – Dan

+0

예 ... 감사합니다. 빠른 손가락, 늦은 밤 :) 편집 됨 –

관련 문제