체크박스 필수입력

체크박스 필수입력

QA

체크박스 필수입력

본문

name값이 다 다른 체크박스들이 있습니다. 

이중에 1개 이상을 체크하게끔 

필수입력 처리를 아래처럼 했는데

안되네요.

뭐가 잘못된걸까요?


<input type="checkbox" name="wr1[0]" value="치킨" <?php echo ($wr1[0] == "치킨") ? "checked" : "";?>> 치킨
<input type="checkbox" name="wr1[1]" value="피자" <?php echo ($wr1[1] == "피자") ? "checked" : "";?>> 피자
<input type="checkbox" name="wr1[2]" value="족발" <?php echo ($wr1[2] == "족발") ? "checked" : "";?>> 족발
 
 
<script>
var flag = false; 
    $("input[name*=wr1).each( function () { 
        if (this.checked) { 
            flag = !flag;  
            return false; 
        } 
    }); 
    if (!flag) { 
        alert("최소 1개 이상 체크해주세요."); 
        return false; 
    }
</script>
 

이 질문에 댓글 쓰기 :

답변 3

$("input[name*=wr1]")  의미가 attribute name = wr1* 이라는 의미 같습니다.

 

차라리 class="input_food"를 넣고 input에 대한 class로 해 보시는 것이 (jquery는 잘 몰라서 개념으로만)

음 클래스값을 wr1으로 주고 getElementsByClassName 다시해봤는데 이래도 안되고 아.. ㅠㅠ


	var arr_form = document.getElementsByClassName('wr1'); 
	var num = 0; 
	for(var i=0; i<arr_form.length; i++){  
		if(arr_form[i].checked){ 
			num++; 
		} 
	} 
	if(!num){ 
		alert('하나이상 선택해주시기 바랍니다');
		location.href='#wr1';  
		return false; 
	}

id=wr1을 모두 주고 아래와 같이 jquery로 해결했습니다.^^ 



<script>
if ($("input:checkbox[id='wr1']").is(":checked") == false){
    $("input:checkbox[id='wr1']").prop("required", true);
}

$("input:checkbox[id='wr1']").click(function() {
    $("input:checkbox[id='wr1']").prop("required", false);
});
</script>

input[name*=wr1  여기서 ]가 안닫혀있네요

<div class="checkbox-group required">
    <input type="checkbox" name="checkbox_name[]">
    <input type="checkbox" name="checkbox_name[]">
    <input type="checkbox" name="checkbox_name[]">
    <input type="checkbox" name="checkbox_name[]">
</div>

$('div.checkbox-group.required :checkbox:checked').length > 0
답변을 작성하시기 전에 로그인 해주세요.
전체 12
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT