라디오버튼 체크 질문드립니다. 채택완료

2년 전 조회 2,498

안녕하세요

폼에서 라디오버튼을 여러개 사용하고 있습니다.

 

Copy
<form enctype="multipart/form-data" id="form1" name="form1" method="post" onsubmit="return form_Check1();" action="form.php'">

 

<input type="radio" id="wr_9" name="wr_9" value="오전">오전
<input type="radio" id="wr_91" name="wr_9" value="점심">점심
<input type="radio" id="wr_92" name="wr_9" value="오후">오후
<input type="radio" id="wr_93" name="wr_9" value="항상">항상

 

</form>
<script>
function form_Check1(){

 

if(!form1.wr_9.checked){
alert("선택해주십시오.");
form1.wr_9.focus();
return false;

}


}

</script>

 

라디오 박스를 선택안하면

스크립트에서 걸러주고 싶은데요

 

저렇게 하면 체크를 하던 안하던

그냥 다음페이지로 넘어가버리네요;;

 

고수님들의 도움 부탁드립니다. ㅠㅠ

 

답변 4개

채택된 답변
+20 포인트

라디오버튼은 자바스립트로도 처리가 가능하나..조금 배열구조를 정의하는게 번거롭기 떄문에.

jquery로 채크 부분을 하시는게 더 유리합니다.

 

$('input:radio[name=이름]').is(':checked');

 

이런식으로 값을 true  false를 판단해서 걸러주시면 편리합니다. 

 

예를들어 위에서 작성한 코드를 예를들어 다시 재작성해보자면

 

Copy
function form_Check1() {

   var wr_9 = $('input:radio[name=wr_9]').is(':checked')
    if (!wr_9) {
      alert("선택해주십시오.");
      form1.wr_9.focus();
      return false;
    }

 

요런식으로 응용해보시면 좋으실듯싶네요.^^


 

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

function form_Check1() {
  var radioButtons = document.getElementsByName('wr_9');
  var isChecked = false;

  for (var i = 0; i < radioButtons.length; i++) {
    if (radioButtons[i].checked) {
      isChecked = true;
      break;
    }
  }

  if (!isChecked) {
    alert("라디오 버튼을 선택해주세요.");
    return false;
  }
  return true; 
}
 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

그리고 action="form.php'" 이부분이 이상하네요;;; 잘못된듯 한데요;;"form.php" 따옴표 하나 지워주시는게 ;;;;--;;

댓글을 작성하려면 로그인이 필요합니다.

Copy
<input type="radio" id="wr_9" name="wr_9" required value="오전">오전<br>
  <input type="radio" id="wr_91" name="wr_9" required value="점심">점심<br>
  <input type="radio" id="wr_92" name="wr_9" required value="오후">오후<br>
  <input type="radio" id="wr_93" name="wr_9" required value="항상">항상<br>

스크립트로 안 하시고 required만 추가 하셔도 됩니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

Copy
<form enctype="multipart/form-data" id="form1" name="form1" method="post" onsubmit="return form_Check1();" action="form.php">
  <input type="radio" id="wr_9" name="wr_9" value="오전">오전<br>
  <input type="radio" id="wr_91" name="wr_9" value="점심">점심<br>
  <input type="radio" id="wr_92" name="wr_9" value="오후">오후<br>
  <input type="radio" id="wr_93" name="wr_9" value="항상">항상<br>
</form>
<script>
  function form_Check1() {
    if (!form1.wr_9.checked) {
      alert("선택해주십시오.");
      form1.wr_9.focus();
      return false;
    }
  }
</script>
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

if ( $('#form1 input[name=wr_9]:checked').length<1) {
alert("선택해주십시오....

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고