OR15A 2023. 12. 7. 13:30
λ‚΄κ°€ (체크)μ„ νƒν•œ μˆœμ„œλŒ€λ‘œ μž…λ ₯λ˜λ„λ‘.
μ΅œκ·Όμ— μ„ νƒν•œ 것이 κ°€μž₯ λ‚˜μ€‘μ—.
체크 ν•΄μ œν•˜λ©΄ κ·Έ λ‚΄μš©λ§Œ μ‚­μ œ
μ²΄ν¬ν•˜λ©΄ μ•„λž˜μ— μ²΄ν¬ν•œ λ‚΄μš© ν…μŠ€νŠΈ 써주기
μˆ˜λ™μœΌλ‘œ κ°œλ³„μ²΄ν¬ν–ˆμ„ λ•Œ μ „μ œλ„ μžλ™μœΌλ‘œ 체크되고, ν•˜λ‚˜λ§Œ 체크 풀어도 μ²΄ν¬ν•΄μ œλ˜κ²Œ
체크 κ°œμˆ˜κ°€ 4μ΄ν•˜, 9일 λ–„ λ²„νŠΌ λˆ„λ₯΄λ©΄ 성곡 alert

 

κΈ°λŠ₯ κ΅¬ν˜„ν•˜λ©° μƒˆλ‘œ 배운 λ‚΄μš©
  • $(μ„ νƒμž).arrt("속성 이름","속성 κ°’")와 $(μ„ νƒμž). removeAttr("속성 이름")은  jQuery 1.6 이전 λ²„μ „μ—μ„œλŠ” λ™μž‘ν–ˆμ§€λ§Œ, μ΅œμ‹  λ²„μ „μ—μ„œλŠ” .prop() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•΄μ•Όν•¨
  • 속성 μΆ”κ°€ μ˜ˆμ‹œ: $("#allChk").prop("checked", true);
  • 속성 제거 μ˜ˆμ‹œ:  $("#allChk").prop("checked", false);
  • μ œμ΄μΏΌλ¦¬μ—μ„œ νƒœκ·Έλ‘œ μ„ νƒν•΄μ„œ λ°˜λ³΅ν•˜κΈ° + μ²«λ²ˆμ§Έκ°’ μ œμ™Έ + if 쑰건에 λ§Œμ‘±ν•˜λ©΄ click이벀트 μΌμ–΄λ‚˜κ²Œ ν•˜κΈ°
$("input[type='checkbox']").not(":first").each(function () {
         if (!$(this).is(":checked")) {
         $(this).trigger("click");
     }
});

 

ν™”λ©΄ μ˜ˆμ‹œ

 

JQuery
$(function () {

    // let isAllChecked = false;
    let checkedCount = 0;

    //전체 μ²΄ν¬λ°•μŠ€λ₯Ό μ œμ™Έν•˜κ³  checkedνƒ€μž…μ˜ input에 click ν•¨μˆ˜ λ„£κΈ°(textareaκ΄€λ ¨)

    $("input[type='checkbox']").not(":first").on("click", function() {
        ckeckedAndTextare($(this));
    });


    function ckeckedAndTextare (element){

        if(element.is(":checked")) {
             //체크 λ˜μ—ˆμ„ λ•Œ textArea에 μΆ”κ°€
            $("#regionText").val($("#regionText").val()+element.val()+" ");
            //체크개수 μΆ”κ°€
            checkedCount = checkedCount+1;
            //이번 체크둜 전체 체크가 λ˜λŠ”κ±°λΌλ©΄
            if(checkedCount==9){
                $("#allChk").prop("checked", true);
            }
        } else {
            //μ²΄ν¬λ˜μ§€ μ•Šμ•˜μ„ λ•Œ κΈ€μž μ‚­μ œ
            let textAreaVale = $("#regionText").val();
            //체크 κ°μ†Œ
            checkedCount = checkedCount-1;
            $("#regionText").val(textAreaVale.replace(element.val()+" ",""));
            // 이번 체크 ν•΄μ œλ‘œ 전체가 ν’€λ¦¬κ²Œ λ˜λŠ”κ±°λΌλ©΄ 전체 λ²„νŠΌ checked μ§€μ›Œμ£ΌκΈ°
            if(checkedCount!=9){
                $("#allChk").prop("checked", false);
            }
        }

    }



    // 전체 λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ μ²΄ν¬λ˜μ§€ μ•Šμ€ νƒœκ·Έλ₯Ό ν™•μΈν•˜κ³  click ν•¨μˆ˜λ₯Ό μ‹€ν–‰ν•œλ‹€.
    $("#allChk").on("click", function () {
        if ($("#allChk").is(":checked")) {

            // 전체 checked이면 checked false인 것듀을 true둜
            $("input[type='checkbox']").not(":first").each(function () {
                if (!$(this).is(":checked")) {
                    $(this).trigger("click");
                }
            });


        } else {

            // 전체 checked μ•„λ‹ˆλ©΄ checked true인 것듀을 false둜
            $("input[type='checkbox']").not(":first").each(function () {
                if ($(this).is(":checked")) {
                    $(this).trigger("click");
                }
            });

        }
    });


    //확인 λ²„νŠΌ
    $("#btn").click(function (){
        if(checkedCount<4||checkedCount==9){
            alert("[성곡] 체크 카운트 : "+checkedCount);

        } else {
            alert("[μ‹€νŒ¨] 체크 카운트 : "+checkedCount);

        }
    });


});