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

체크박스 POST로 전달하기....질문좀.. 채택완료

바트컨트롤 5년 전 조회 3,279

라디오나 텍스트는 잘되는데 ㅠ 체크박스가 어려워서요..

초보적인 질문이지만 조언 부탁드립니다 ㅠㅠ

 

--입력페이지--

</p>

<p><form name ="frm" action="javascript:checkForm(document.frm)" method="POST"></p>

<p>        <label><input type="checkbox" name="fruit[]" value="사과">사과</label>

        <label><input type="checkbox" name="fruit[]" value="딸기">딸기</label>

        <label><input type="checkbox" name="fruit[]" value="바나나">바나나</label></p>

<p> </p>

<p>        <label><input type="checkbox" name="color[]" value="노랑">노랑</label>

        <label><input type="checkbox" name="color[]" value="파랑">파랑</label>

        <label><input type="checkbox" name="color[]" value="빨강">빨강</label></p>

<p>        </p>

<p>        <input type="submit" name="submit" value="전송"></p>

<p></form></p>

<p>

--출력페이지--

</p>

<p><div><?php echo $_POST['fruit']?></div></p>

<p><div><?php echo $_POST['color']?></div></p>

<p>

 

별도의 제이쿼리로

</p>

<p>function checkForm(frm){

    var chkbox1 = frm['fruit[]'];</p>

<p>    var chkbox2 = frm['color[]'];

    var cnt = 0;</p>

<p>    for (var i = 0 ; i < chkbox1.length; i++) {

        if (chkbox1[i].checked) {

           cnt++;

        }

    }

    for (var i = 0 ; i < chkbox2.length; i++) {

        if (chkbox2[i].checked) {

           cnt++;

        }

    }</p>

<p>    document.frm.action = "form_result.php";

    document.frm.submit();

}</p>

<p>

 

ㅜㅜ출력페이지가 호출이 안되드라구요...ㅠㅠ

뭔가 result 갈때도 엄청 느려지고..

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

답변 3개

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

체크박스는 배열로 넘어가니 php에서 받을 때

var_dump($_POST) 로 출력해 보시면 됩니다. 아니면

print_r($_POST) 로 확인해 보셔도 되구요.

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

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

제이쿼리부분은 필요없어보이는데요

cnt를 계산해놓고 쓰는게 안보이네요

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

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

독구파랑
<form name ="frm" action="javascript:checkForm(document.frm)" method="POST">
        <label><input type="checkbox" name="fruit" value="사과">사과</label>
        <label><input type="checkbox" name="fruit" value="딸기">딸기</label>
        <label><input type="checkbox" name="fruit" value="바나나">바나나</label>
 
        <label><input type="checkbox" name="color" value="노랑">노랑</label>
        <label><input type="checkbox" name="color" value="파랑">파랑</label>
        <label><input type="checkbox" name="color" value="빨강">빨강</label>
        
        <input type="submit" name="submit" value="전송">
</form></code></pre>

<p><code>

 

변경내용

fruit[] -> fruit

color[] -> color

스크립트도 동일합니다.

 

스크립트

</code></p>

<pre>
<code>function checkForm(frm){
    /* 체크박스가 하나도 선택되지 않았을때를 검증하는 소스인 것 같은데 사용되지 않으면 제거
    var chkbox1 = frm['fruit'];
    var chkbox2 = frm['color'];
    var cnt = 0;
    for (var i = 0 ; i < chkbox1.length; i++) {
        if (chkbox1[i].checked) {
           cnt++;
        }
    }
    for (var i = 0 ; i < chkbox2.length; i++) {
        if (chkbox2[i].checked) {
           cnt++;
        }
    }
    */
    document.frm.action = "form_result.php";
    document.frm.submit();
}</code></pre>

<p><code>

 

 

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

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

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

로그인