2014-07-23 5 views
0

사용자가 누락 된 라디오 버튼을 선택했지만 드롭 다운 옵션을 선택하지 않은 경우 저장 버튼을 클릭하면 경고 메시지가 표시되어야합니다.라디오 버튼 및 드롭 다운 유효성 검사

2 가지 방법을 시도했습니다. 첫 번째 방법은

if ($(".missing input[type:radio]:checked").length > 0 && $(".reason").val() == "") 
    { 
    alert("You have not selected a reason from the drop down list of the Missing section."); 
    return false; 
    } 

두 번째 방법 - 텍스트 영역의 텍스트를 식별하는 방법입니다. 그것이 ~ CM을 ~~이 들어 있으면 나는 바이올린의 코드를 주석 처리하고 어떤 방법을 사용하는 느낌이있다

if ("ta:contains(~CM~~).length>0") 
{ 
alert("Missing radio has been selected but nothing in the drop down has been selected"); 
} 

경고를 보여줍니다. 크롤러도이 문제에 대한 .. 웹에서 모든 정보를 얻을 수없는, 내가 더미를 추가하기 때문에 모든

JSFIDDLE

답변

1

첫째로, 그것은 당신의 위치를 ​​디자인하는 <table>를 사용하는 좋은 방법이 아니다 그 라디오 버튼이 당신의 <tr> ..

에 클래스는이로이 방법을 변경

:

//for checking the combobox 
$('.selection').each(function(){ 
    if($(this).find(".missing input").attr("checked") == "checked" && $(this).find(".reason").val() == ""){ 
     alert("You have not selected a reason from the drop down list of the Missing section."); 
    } 
}); 
//for checking the textarea 
$('.selection').each(function(){ 
    if($(this).find(".missing input").attr("checked") == "checked" && $(this).find("textarea").val() == ""){ 
     alert("You have not type anything in the textarea."); 
    } 
}); 

체크 아웃이 Fiddle.

+0

감사합니다. 불행히도 tr에 아무 것도 추가 할 수 없습니다. 내 두 번째 코드 (: contains)가 작동하지 않는 이유를 친절하게 말해 줄 수 있습니까? 텍스트 영역에 ~ CM ~~가 있는지 확인한 후 경고합니다. – 19eggs

+0

정확히 왜 그런지는 모르겠지만 비슷한 접근법은 다음과 같습니다 :'if (ta.indexOf ("~ CM ~~")> 0)' –

관련 문제