자바스크립트 체크박스 배열에 담는 방법이 궁금합니다 ㅠ

자바스크립트 체크박스 배열에 담는 방법이 궁금합니다 ㅠ

QA

자바스크립트 체크박스 배열에 담는 방법이 궁금합니다 ㅠ

본문

1028936349_1586052688.3967.jpg

 

이렇게 테스트로 일단 만들었는데요!!

 


<?php for ($i=0; $rows = sql_fetch_array($resultp); $i++) { ?>
  <tr>
    <td><input type="checkbox" name="yogch"></td>
    <td><select class="intab" name="yogch" value="">
      <option value="" selected disabled hidden><?php echo $rows['ph_tong']; ?></option>
      <option value="fruit">과일</option>
      <option value="food">음식</option>
    </select></td>
    <td><input class="intab" type="text" name="yogch" value="<?php echo $rows['ph_name']; ?>"></td>
    <td><input class="intab" type="text" name="yogch" value="<?php echo $rows['ph_yoname']; ?>"></td>
  </tr>
<?php } ?>
 
<script>
function checkon(f){
  var ijsi = $("input:checkbox[name=yogch]:checked").length;
  console.log(ijsi);
}
</script>

 

테이블에 대충 내용 넣고 일단 위 그림처럼 불러 왔습니다!

제가 궁금한건 예를들어 체크박스를 한군데 또는 두군데 클릭을 하면

제일 왼쪽 체크박스된곳에 해당 된 내용 (ex, 과일, 사과, 바나나) 를

배열에 담아서 POST 값으로 넘기고 싶은데요

이럴때에는 어떤 방법을 사용해야하나요.....?? ㅠ

(배열을 담는 JS 구문을 모르겠는데 방법 아시는분 계실까요?? ㅠ)

(스크립트 안에는 체크박스 되어있는 갯수 출력하는거 찾아서 넣었습니다 ㅠ)

이 질문에 댓글 쓰기 :

답변 1


$("input[name='yogch']:checkbox").on("click", function() {
    if($(this).is(":checked") == true) {
        var v1 = $(this).closest("tr").find("select option:selected").text();
        var v2 = $(this).closest("tr").find("td:eq(2)").children("input").val();
        var v3 = $(this).closest("tr").find("td:eq(3)").children("input").val();
        $(this).val(v1 + ", " + v2 + ", " + v3);
    }
});

배열로 넘기실 거면 체크박스 이름을 yogch[] 이런 식으로 처리하는 게 좋습니다.

그리고 name이 너무 중복되네요.

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

회원로그인

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