2013-05-04 5 views
0

다른 이름 속성을 갖는 라디오 버튼 세트의 유효성을 검증하는 방법. 예를 들어Jquery를 사용하여 라디오 버튼 세트 유효성 확인

:

내가 모든 "UL"는 선택된 라디오 버튼이 있고 어느 경우에 적절한 메시지를 받게해야한다는 유효성을 검사 할
<div id="divTest"> 
    <ul> 
      <li><input type="radio" name="rdo0"><span>Good</span></li> 
      <li><input type="radio" name="rdo0"><span>Average</span></li> 
      <li><input type="radio" name="rdo0"><span>Bad</span></li> 
    </ul> 

    <ul> 
      <li><input type="radio" name="rdo1"><span>Test</span></li> 
      <li><input type="radio" name="rdo1"><span>Test 2</span></li> 
      <li><input type="radio" name="rdo1"><span>Test 3</span></li> 
    </ul> 

</div> 

.

var radioChecked = false; 
$("ul.ContainsRadios").each(function(ind,ele){ 
    radioChecked = false; 
    $(ele).children("input[type=radio]").each(function(ind2,ele2) { 
     if (ele2.checked){ 
      radioChecked = true; 
     } 
    }); 
    if(!radioChecked){ 
     $(ele).addClass("ValidatClass"); 
    } 
}); 

위의 코드를 가진 유일한 문제는 내가 코드에서 언급 클래스 같은과 함께 UL의 라디오 입력을 포함하는 라벨을 할 필요가 있습니다 :

+0

지금까지 시도한 것은 무엇입니까? –

답변

2

당신은 자신에 의해 시도해야 ... 어쨌든

, 여기에 예입니다 다른 입력 값도 있습니다. .find(':radio:checked')

+0

나는 잘하고있다. 감사 :) –

0

당신이 뭔가를 시도 할 수 있습니다.

function validate_checkbox() { 
    var error = false; 
    $('ul', '#divTest').each(function() { 
     if ($('input[type="radio"]:checked', this).length == 0) { 
      error = true; 
     } 
    });  
    return error; 
} 

$("#somebutton").on('click', function() { 
     alert(validate_checkbox() ? 'error' : 'ok'); 
}); 

http://jsfiddle.net/yiernehr/mgjwj/3/

+0

name 속성이 동적으로 생성되므로 하드 코딩 된 값을 포함하지 않는 솔루션을 원합니다. –

+0

@DeepSharma가 내 수정 사항을 확인합니다. – Nomad101

+0

나는 내 대답 친구를 얻었다. 당신의 노력에 감사드립니다 :) –

0

만 라디오 버튼이있는 경우 :

var $uls = $('#divTest > ul'); 
if ($uls.find(':checked').length === $uls.length) { 
    // is valid 

하는 경우를