테스트 사이트 - 개발 중인 베타 버전입니다

체크박스 배열 관련 질문 입니다. 채택완료

웹프리죤 5년 전 조회 1,815

체크박스 name 값이 type4[] 부터 type13[]  까지가 있는데요

 

다 따로 필수체크 해버리면 안되고 type4[] 부터 type13[]  중에서 필수체크를 할려고 하거든요

 

아래 소스는 예로 type4[] 만 체크하는건데 type4[] 부터 type13[] 까지 하나는 무조건 체크하라는 조건문이 필요해보이는데 for 으로 하는건지요..

 

$("input[name='type4[]']").each( function () {
            if (this.checked) {
                flag = !flag; 
                return false;
            }
        });

 

위에 설명 처럼 되게 할려면 어떻게 해야 되는걸까요?

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

답변 3개

채택된 답변
+20 포인트
5년 전

필수 체크 해야하는 체크박스에 class 를 하나주시고

 

$(".클래스").each( function () {

 

으로 하시면 되지 않을까요? 간단하게 생각나는 방법이네요

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

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

5년 전

체크박스 name 값이 type4[] 부터 type13[]  까지가 있는데요<---무언가 설계가 잘못 되었지 않나요?

체크박스가 각각 이름이 다른데 배열로 한 이유가 무었인가요?

<input type='checkbox' name='type4[]' value='4' class='chk'>

<input type='checkbox' name='type5[]' value='5' class='chk'>

위와 같다면 name을 배열형식으로 할 이유가 없습니다

type4[]<--이것은 type4[] 라는 이름이 여러개 일때 사용하는 것입니다

---------------------------

체크된 갯수는 위와 같이 class를 주면 아주 간단합니다

$('.chk:checked').length

 

 

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

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

플래토
5년 전

</p>

<p> </p>

<p>for (var i=4; i <= 13; i++) {</p>

<p>   $("input[name='type"+i+"[]']").each( function () {

            if (this.checked) {

                flag = !flag; 

                return false;

            }

        });</p>

<p>}</p>

<p>

 

와 같이 해보세요

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

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

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

로그인