체크박스 한개이상 체크

체크박스 한개이상 체크

QA

체크박스 한개이상 체크

본문

input checkbox를 전체선택하거나 한개이상 체크하게 하는 소스입니다.


<script>
//체크박스 전체 선택,
function checkAll () {
    var obj = document.getElementsByName("no[]");
    if (obj.length > 0){
        for( var i=0; i< obj.length; i++) {
            if (obj[i].checked == false){
                obj[i].checked = true;
            }else{
                obj[i].checked = false;
            }
        }
    }
}
// 체크박스 체크 validate (체크박스 유효성 검증)
function chkchk (form){ 
    var arr_form = document.getElementsByName('no[]'); 
    var num = 0; 
    for(var i=0; i<arr_form.length; i++){ 
        if(arr_form[i].checked){ 
            num++; 
        } 
    } 
    if(!num){ 
        alert('하나 이상 선택해주시기 바랍니다'); 
        return false; 
    } 
} 
</script> 

<body>
<button type="button" onclick="checkAll();">전체선택하기</button> 
<form name="TEST" method="POST" action="" onsubmit="return chkchk(this);">
1 : <input type="checkbox" id="chk_chg" name="no[]" value="1">
2 : <input type="checkbox" id="chk_chg" name="no[]" value="2">
3 : <input type="checkbox" id="chk_chg" name="no[]" value="3">
4 : <input type="checkbox" id="chk_chg" name="no[]" value="4">
5 : <input type="checkbox" id="chk_chg" name="no[]" value="5">
<button>전송</button>
</form>
</body>

 

[질문1]

name값이 다를경우의 처리는 어떻게 해야 할까요? 예를들어

1 : <input type="checkbox" id="chk_chg" name="no1" value="1">
2 : <input type="checkbox" id="chk_chg" name="no2" value="2">
3 : <input type="checkbox" id="chk_chg" name="no3" value="3">
4 : <input type="checkbox" id="chk_chg" name="no4" value="4">
5 : <input type="checkbox" id="chk_chg" name="no5" value="5">

 

[질문2]

스크립트에서 체크시 name말고 id로 체크하기 위해서

document.getElementsById로 바꿨는데 작동이 안되더라구요.

id값으로 

처리하고자 할 경우 어느부분을 더 수정해줘야 할까요?

이 질문에 댓글 쓰기 :

답변 1

id값은 같아서는 안됩니다.

class명을 같게 주시고 getElementsByClassName을 사용하세요.

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 43
QA 내용 검색

회원로그인

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