ฉันจะตรวจสอบ / ยกเลิกการเลือกช่องทำเครื่องหมายทั้งหมดด้วยปุ่มโดยใช้ jQuery ได้อย่างไร


158

ฉันพยายามตรวจสอบ / ยกเลิกการทำเครื่องหมายในช่องทั้งหมดโดยใช้ jQuery ตอนนี้โดยการตรวจสอบ / ยกเลิกการทำเครื่องหมายที่ช่องทำเครื่องหมายหลักช่องทำเครื่องหมายลูกทั้งหมดจะถูกเลือก / ยกเลิกการเลือกด้วยข้อความของช่องทำเครื่องหมายของผู้ปกครองที่ได้รับการเปลี่ยนเป็นตรวจสอบ / ยกเลิกการทำเครื่องหมาย

ตอนนี้ฉันต้องการแทนที่ช่องทำเครื่องหมายผู้ปกครองด้วยปุ่มอินพุตและเปลี่ยนข้อความบนปุ่มเพื่อตรวจสอบ / ยกเลิกการเลือก รหัสคือทุกคนสามารถปรับแต่งรหัสได้หรือไม่

    $( function() {
        $( '.checkAll' ).live( 'change', function() {
            $( '.cb-element' ).attr( 'checked', $( this ).is( ':checked' ) ? 'checked' : '' );
            $( this ).next().text( $( this ).is( ':checked' ) ? 'Uncheck All' : 'Check All' );
        });
        $( '.cb-element' ).live( 'change', function() {
            $( '.cb-element' ).length == $( '.cb-element:checked' ).length ? $( '.checkAll' ).attr( 'checked', 'checked' ).next().text( 'Uncheck All' ) : $( '.checkAll' ).attr( 'checked', '' ).next().text( 'Check All' );

        });
    });


   <input type="checkbox" class="checkAll" /> <b>Check All</b>

   <input type="checkbox" class="cb-element" /> Checkbox  1
   <input type="checkbox" class="cb-element" /> Checkbox  2
   <input type="checkbox" class="cb-element" /> Checkbox  3


ตรวจสอบบทช่วยสอนด้วย jQuery freakyjolly.com/ …
รหัส Spy

คำตอบ:


228

ลองอันนี้ :

$(document).ready(function(){
    $('.check:button').toggle(function(){
        $('input:checkbox').attr('checked','checked');
        $(this).val('uncheck all');
    },function(){
        $('input:checkbox').removeAttr('checked');
        $(this).val('check all');        
    })
})

การสาธิต


6
-1 สลับไม่ได้หมายความว่าสำหรับการทำงานเช่นเดียวกับที่: api.jquery.com/toggle (อย่างน้อยรุ่นปัจจุบัน)
estani

2
ใช้งานได้กับปุ่มเดียวเท่านั้นหากคุณต้องการใช้หลายวิธีดีที่สุดที่จะใช้.click()
foochow

5
หัวขึ้น: คำตอบนี้จะตรวจสอบทุกช่องในแบบฟอร์มของคุณ ข้ามไปเว้นแต่คุณต้องการ สำหรับการตรวจสอบหลายครั้งคำตอบนี้ช่วยฉันได้: stackoverflow.com/a/27148382/3448554
Kelsey Hannan

1
ฉันลองใช้รหัสนี้แล้ว แต่ทำไมช่องทำเครื่องหมายของฉันถึงหายไป xD และมีคุณสมบัติ "display: none" อยู่ในนั้น
melvnberd

10
ด้วย jQuery เวอร์ชันใหม่ล่าสุด.attr()และremoveAttr()ไม่ควรใช้ร่วมกับแอตทริบิวต์ "checked" ในฐานะที่จะลบแอตทริบิวต์แทนการตั้งค่าให้removeAttr() หรือควรใช้แทนดังที่อธิบายไว้ในคำตอบ @ richard-garside false.prop('checked', true).prop('checked', false)
David Torres

110

นี่เป็นวิธีที่สั้นที่สุดที่ฉันพบ (ต้องการ jQuery1.6 +)

HTML:

<input type="checkbox" id="checkAll"/>

JS:

$("#checkAll").change(function () {
    $("input:checkbox").prop('checked', $(this).prop("checked"));
});

ฉันกำลังใช้ .prop เป็น. atr ไม่ทำงานกับช่องทำเครื่องหมายใน jQuery 1.6+ เว้นแต่คุณจะเพิ่มแอตทริบิวต์ที่ตรวจสอบแล้วลงในแท็กอินพุตของคุณอย่างชัดเจน

ตัวอย่าง-

$("#checkAll").change(function () {
    $("input:checkbox").prop('checked', $(this).prop("checked"));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="#">
    <p><label><input type="checkbox" id="checkAll"/> Check all</label></p>
    
    <fieldset>
        <legend>Loads of checkboxes</legend>
        <p><label><input type="checkbox" /> Option 1</label></p>
        <p><label><input type="checkbox" /> Option 2</label></p>
        <p><label><input type="checkbox" /> Option 3</label></p>
        <p><label><input type="checkbox" /> Option 4</label></p>
    </fieldset>
</form>


คุณใช้อันนี้ได้อย่างไร มีโอกาสเห็นซอหรือไม่?
Drewdavid

1
คำตอบง่ายๆ แต่ OP ต้องการปุ่ม
vphilipnyc

คุณ "ยกเลิกการเลือกทั้งหมด" ด้วยวิธีนี้อย่างไร
Michal Skop

@MichalSkop รหัสนี้เลือกหรือยกเลิกการเลือกโดยพิจารณาจาก #checkAll ได้รับการตรวจสอบหรือไม่ หากคุณต้องการยกเลิกการเลือกทั้งหมดคุณสามารถใช้ค่า false เช่น $ ("input: checkbox") นี้ prop ('ตรวจสอบ', false);
Richard Garside

ขอบคุณง่ายมาก!
viniciussvl

17

ลองอันนี้:

HTML

<input type="checkbox" name="all" id="checkall" />

JavaScript

$('#checkall:checkbox').change(function () {
   if($(this).attr("checked")) $('input:checkbox').attr('checked','checked');
   else $('input:checkbox').removeAttr('checked');
});​

การสาธิต


ใช่ขอบคุณรหัสนี้สมบูรณ์แบบแม้ว่าจะเปลี่ยนจาก DOM LEVEL ฉันลองใช้รหัสอย่างหนักแล้ว แต่ฉันก็ลองปลั๊กอินอื่น ๆ ที่ไม่ทำงานด้วยเช่นกัน .. อันนี้สมบูรณ์แบบ
Rafee

14

html

<input type="checkbox" name="select_all" id="select_all" class="checkAll" />

จาวาสคริ

    $('.checkAll').click(function(){
    if($(this).attr('checked')){
        $('input:checkbox').attr('checked',true);
    }
    else{
        $('input:checkbox').attr('checked',false);
    }
});

6
ใช้ .prop แทนที่จะเป็น .attr หากคุณใช้ jQuery1.6 +
Richard Garside

5

โซลูชันสำหรับสลับช่องทำเครื่องหมายโดยใช้ปุ่มเข้ากันได้กับ jQuery 1.9+โดยที่toogle-event ไม่สามารถใช้ได้อีกต่อไป :

$('.check:button').click(function(){
      var checked = !$(this).data('checked');
      $('input:checkbox').prop('checked', checked);
      $(this).val(checked ? 'uncheck all' : 'check all' )
      $(this).data('checked', checked);
});

การสาธิต


แทนที่ปุ่มด้วยช่องทำเครื่องหมายและ "อินพุต: ช่องทำเครื่องหมาย" ด้วยคลาสสำหรับวัตถุประสงค์ของฉันและสิ่งนี้ใช้งานได้ดี!
RationalRabbit

5

ลองสิ่งนี้:

$('.checkAll').on('click', function(e) {
     $('.cb-element').prop('checked', $(e.target).prop('checked'));
});

eเป็นกิจกรรมที่สร้างขึ้นเมื่อคุณทำclickและe.targetเป็นองค์ประกอบที่คลิก ( .checkAll) ดังนั้นคุณจะต้องใส่คุณสมบัติcheckedขององค์ประกอบที่มีคลาส.cb-elementเช่นเดียวกับองค์ประกอบที่มีคลาส. checkAll`

PS: ขอโทษภาษาอังกฤษที่ไม่ดีของฉัน!


1
เฮ้รูเบนคุณควรเพิ่มความเห็นในคำตอบของคุณเพื่อให้ OP สามารถเข้าใจว่าคุณแก้ปัญหานั้นได้อย่างไร
edi9999

ขอบคุณสำหรับความช่วยเหลือของคุณ @ edi9999 ฉันเป็นผู้เริ่มต้น
Ruben Perez

1
คำตอบนี้ดีกว่า IMO เนื่องจากคำตอบที่ยอมรับจะตรวจสอบช่องทำเครื่องหมายทั้งหมดในแบบฟอร์มของคุณในขณะที่รูปแบบของคุณช่วยให้คุณกำหนดเป้าหมายองค์ประกอบHTML $ ("# id")หรือ$ (". class")ผ่านรูปแบบที่ $('#all_news_items').on('click', function(e) { $('.news-item-option').prop('checked', $(e.target).prop('checked')); }); ไม่มีการตรวจสอบ ฟังก์ชั่นการรบกวนกับองค์ประกอบรูปแบบอื่น ๆ ดังนั้นคุณสามารถเพิ่ม checkall ใหม่ได้อย่างง่ายดาย:$('#all_specializations').on('click', function(e) { $('.specialization-option').prop('checked', $(e.target).prop('checked')); });
Kelsey Hannan

4

คุณสามารถลองสิ่งนี้

    $('.checkAll').on('click',function(){
        $('.checkboxes').prop('checked',$(this).prop("checked"));
    });`

Class .checkAllเป็นช่องทำเครื่องหมายที่ควบคุมการทำงานเป็นกลุ่ม


3

เห็นด้วยกับคำตอบสั้น ๆ ของ Richard Garside แต่แทนที่จะใช้prop()ใน$(this).prop("checked")คุณสามารถใช้checkedคุณสมบัติJS ดั้งเดิมของช่องทำเครื่องหมายเช่น

$("#checkAll").change(function () {
    $("input:checkbox").prop('checked', this.checked);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="#">
    <p><label><input type="checkbox" id="checkAll"/> Check all</label></p>
    
    <fieldset>
        <legend>Loads of checkboxes</legend>
        <p><label><input type="checkbox" /> Option 1</label></p>
        <p><label><input type="checkbox" /> Option 2</label></p>
        <p><label><input type="checkbox" /> Option 3</label></p>
        <p><label><input type="checkbox" /> Option 4</label></p>
    </fieldset>
</form>


3

ทำเครื่องหมาย / ไม่เลือกทั้งหมดด้วยคุณสมบัติระดับกลางโดยใช้ jQuery

รับรายการที่เลือกในอาร์เรย์ใช้getSelectedItems ()วิธีการ

รายการช่องทำเครื่องหมายแหล่งที่มาเลือก / ไม่เลือกทั้งหมดด้วยการตรวจสอบหลักที่ไม่ระบุ

ป้อนคำอธิบายรูปภาพที่นี่

HTML

<div class="container">
  <div class="card">
    <div class="card-header">
      <ul class="list-group list-group-flush">
        <li class="list-group-item">
          <input
            class="form-check-input"
            type="checkbox"
            value="selectAll"
            id="masterCheck"
          />
          <label class="form-check-label" for="masterCheck">
            Select / Unselect All
          </label>
        </li>
      </ul>
    </div>
    <div class="card-body">
      <ul class="list-group list-group-flush" id="list-wrapper">
        <li class="list-group-item">
          <input
            class="form-check-input"
            type="checkbox"
            value="item1"
            id="item1"
          />
          <label class="form-check-label" for="item1">
            Item 1
          </label>
        </li>
        <li class="list-group-item">
          <input
            class="form-check-input"
            type="checkbox"
            value="item2"
            id="item2"
          />
          <label class="form-check-label" for="item2">
            Item 2
          </label>
        </li>
        <li class="list-group-item">
          <input
            class="form-check-input"
            type="checkbox"
            value="item3"
            id="item3"
          />
          <label class="form-check-label" for="item3">
            Item 3
          </label>
        </li>
        <li class="list-group-item">
          <input
            class="form-check-input"
            type="checkbox"
            value="item4"
            id="item4"
          />
          <label class="form-check-label" for="item4">
            Item 4
          </label>
        </li>
        <li class="list-group-item">
          <input
            class="form-check-input"
            type="checkbox"
            value="item5"
            id="item5"
          />
          <label class="form-check-label" for="item5">
            Item 5
          </label>
        </li>
        <li class="list-group-item" id="selected-values"></li>
      </ul>
    </div>
  </div>
</div>

jQuery

  $(function() {
    // ID selector on Master Checkbox
    var masterCheck = $("#masterCheck");
    // ID selector on Items Container
    var listCheckItems = $("#list-wrapper :checkbox");

    // Click Event on Master Check
    masterCheck.on("click", function() {
      var isMasterChecked = $(this).is(":checked");
      listCheckItems.prop("checked", isMasterChecked);
      getSelectedItems();
    });

    // Change Event on each item checkbox
    listCheckItems.on("change", function() {
      // Total Checkboxes in list
      var totalItems = listCheckItems.length;
      // Total Checked Checkboxes in list
      var checkedItems = listCheckItems.filter(":checked").length;

      //If all are checked
      if (totalItems == checkedItems) {
        masterCheck.prop("indeterminate", false);
        masterCheck.prop("checked", true);
      }
      // Not all but only some are checked
      else if (checkedItems > 0 && checkedItems < totalItems) {
        masterCheck.prop("indeterminate", true);
      }
      //If none is checked
      else {
        masterCheck.prop("indeterminate", false);
        masterCheck.prop("checked", false);
      }
      getSelectedItems();
    });

    function getSelectedItems() {
      var getCheckedValues = [];
      getCheckedValues = [];
      listCheckItems.filter(":checked").each(function() {
        getCheckedValues.push($(this).val());
      });
      $("#selected-values").html(JSON.stringify(getCheckedValues));
    }
  });

2

ทางออกที่ดีที่สุดที่นี่ ตรวจสอบซอ

$("#checkAll").change(function () {
    $("input:checkbox.cb-element").prop('checked', $(this).prop("checked"));
});
$(".cb-element").change(function () {
        _tot = $(".cb-element").length                        
        _tot_checked = $(".cb-element:checked").length;

        if(_tot != _tot_checked){
            $("#checkAll").prop('checked',false);
        }
});
<input type="checkbox" id="checkAll"/> ALL

<br />

<input type="checkbox" class="cb-element" /> Checkbox  1
<input type="checkbox" class="cb-element" /> Checkbox  2
<input type="checkbox" class="cb-element" /> Checkbox  3

2

รหัสด้านล่างจะใช้งานได้หากผู้ใช้เลือกช่องทำเครื่องหมายทั้งหมดจากนั้นทำเครื่องหมายที่ช่องทำเครื่องหมายทั้งหมดจะถูกตรวจสอบและหากผู้ใช้ยกเลิกการเลือกช่องทำเครื่องหมายใดช่องหนึ่งจากนั้นทำเครื่องหมายที่ช่องทำเครื่องหมายทั้งหมดจะถูกยกเลิกการเลือก

$("#checkall").change(function () {
    $("input:checkbox").prop('checked', $(this).prop("checked"));
});

$(".cb-element").change(function () {
  if($(".cb-element").length==$(".cb-element:checked").length)
    $("#checkall").prop('checked', true);
  else
    $("#checkall").prop('checked', false);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="checkbox" name="all" id="checkall" />Check All</br>

<input type="checkbox" class="cb-element" /> Checkbox  1</br>
<input type="checkbox" class="cb-element" /> Checkbox  2</br>
<input type="checkbox" class="cb-element" /> Checkbox  3


1

ลองนี้

$(".checkAll").click(function() {
    if("checkall" === $(this).val()) {
         $(".cb-element").attr('checked', true);
         $(this).val("uncheckall"); //change button text
    }
    else if("uncheckall" === $(this).val()) {
         $(".cb-element").attr('checked', false);
         $(this).val("checkall"); //change button text
    }
});

ฉันลองใช้สคริปต์ของคุณแล้ว แต่ไม่มีโชค คุณช่วยเห็นสิ่งนี้ได้ไหมถ้าฉันใช้งานถูกต้องหรือไม่ .. ? การสาธิต
Ravi

1

การโปรโมตตนเองอย่างไร้ยางอาย: มีปลั๊กอิน jQuery สำหรับสิ่งนั้นนั้น

HTML:

<form action="#" id="myform">
    <div><input type="checkbox" id="checkall"> <label for="checkall"> Check all</label></div>
    <fieldset id="slaves">
        <div><label><input type="checkbox"> Checkbox</label></div>
        <div><label><input type="checkbox"> Checkbox</label></div>
        <div><label><input type="checkbox"> Checkbox</label></div>
        <div><label><input type="checkbox"> Checkbox</label></div>
        <div><label><input type="checkbox"> Checkbox</label></div>
    </fieldset>
</form>

JS:

$('#checkall').checkAll('#slaves input:checkbox', {
    reportTo: function () {
        var prefix = this.prop('checked') ? 'un' : '';
        this.next().text(prefix + 'check all');
    }
});​

... และคุณทำเสร็จแล้ว

http://jsfiddle.net/mattball/NrM2P



1

คุณสามารถใช้this.checkedเพื่อตรวจสอบสถานะปัจจุบันของช่องทำเครื่องหมาย

$('.checkAll').change(function(){
    var state = this.checked; //checked ? - true else false

    state ? $(':checkbox').prop('checked',true) : $(':checkbox').prop('checked',false);

    //change text
    state ? $(this).next('b').text('Uncheck All') : $(this).next('b').text('Check All')
});


1

ลองใช้รหัสด้านล่างเพื่อทำเครื่องหมาย / ไม่เลือกช่องทำเครื่องหมายทั้งหมด

jQuery(document).ready(function() {
    $("#check_uncheck").change(function() {
        if ($("#check_uncheck:checked").length) {
            $(".checkboxes input:checkbox").prop("checked", true);
        } else {
            $(".checkboxes input:checkbox").prop("checked", false);
        }
    })
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="checkbox" name="check_uncheck" id="check_uncheck" /> Check All/Uncheck All
<br/>
<br/>
<div class="checkboxes">
    <input type="checkbox" name="check" id="check" /> Check Box 1
    <br/>
    <input type="checkbox" name="check" id="check" /> Check Box 2
    <br/>
    <input type="checkbox" name="check" id="check" /> Check Box 3
    <br/>
    <input type="checkbox" name="check" id="check" /> Check Box 4
</div>

ลองสิ่งนี้ ลิงค์สาธิต

นอกจากนี้ยังมีอีกวิธีสั้น ๆ ในการทำเช่นนี้ชำระเงินด้านล่าง ในตัวอย่างนี้ตรวจสอบ / ยกเลิกการทำเครื่องหมายที่ช่องทำเครื่องหมายทั้งหมดจะถูกตรวจสอบหรือไม่ถ้าทำเครื่องหมายจากนั้น Wi ทั้งหมดจะถูกตรวจสอบและถ้าไม่ทั้งหมดจะถูกยกเลิกการทำเครื่องหมาย

$("#check_uncheck").change(function() {
    $(".checkboxes input:checkbox").prop("checked",$(this).is(':checked'));
})
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <input type="checkbox" name="check_uncheck" id="check_uncheck" /> Check All/Uncheck All
    <br/>
    <br/>
    <div class="checkboxes">
        <input type="checkbox" name="check" id="check" /> Check Box 1
        <br/>
        <input type="checkbox" name="check" id="check" /> Check Box 2
        <br/>
        <input type="checkbox" name="check" id="check" /> Check Box 3
        <br/>
        <input type="checkbox" name="check" id="check" /> Check Box 4
    </div>


0

ฉันรู้ว่าคำถามนี้เก่า แต่ฉันสังเกตเห็นว่าคนส่วนใหญ่ใช้ช่องทำเครื่องหมาย คำตอบที่ยอมรับนั้นใช้ปุ่ม แต่ไม่สามารถใช้งานได้กับหลายปุ่ม (เช่นปุ่มเดียวที่ด้านบนของหน้าเดียวที่ด้านล่าง) ดังนั้นนี่คือการดัดแปลงที่ทำทั้งสองอย่าง

HTML

<a href="#" class="check-box-machine my-button-style">Check All</a>

jQuery

var ischecked = false;
$(".check-box-machine").click(function(e) {
    e.preventDefault();
    if (ischecked == false) {
        $("input:checkbox").attr("checked","checked");
        $(".check-box-machine").html("Uncheck All");
        ischecked = true;
    } else {
        $("input:checkbox").removeAttr("checked");
        $(".check-box-machine").html("Check All");
        ischecked = false;
    }
});

สิ่งนี้จะช่วยให้คุณมีปุ่มได้มากเท่าที่คุณต้องการด้วยการเปลี่ยนค่าข้อความและช่องทำเครื่องหมาย ฉันรวมe.preventDefault()สายเพราะจะทำให้หน้าไม่สามารถกระโดดไปด้านบนได้เนื่องจากhref="#"ส่วนหนึ่ง


0
$(function () {
    $('input#check_all').change(function () {
        $("input[name='input_ids[]']").prop('checked', $(this).prop("checked"));
    });
});

คุณกรุณาแก้ไขด้วยคำอธิบายว่าทำไมรหัสนี้ตอบคำถามได้หรือไม่ คำตอบที่ไม่ใช้รหัสเท่านั้นไม่มีกำลังใจเพราะพวกเขาไม่ได้สอนวิธีแก้ปัญหา
Scimonster

0

นี่คือลิงค์ที่ใช้ในการตรวจสอบและยกเลิกการเลือกช่องทำเครื่องหมายหลักและช่องทำเครื่องหมายย่อยทั้งหมดจะถูกเลือกและยกเลิกการเลือก

ตรวจสอบ jquery ยกเลิกการเลือกช่องทำเครื่องหมายทั้งหมดโดยใช้ Jquery With Demo

$(function () {
        $("#select-all").on("click", function () {
            var all = $(this);
            $('input:checkbox').each(function () {
                $(this).prop("checked", all.prop("checked"));
            });
        });
    });

0
<script type="text/javascript">
    function myFunction(checked,total_boxes){ 
         for ( i=0 ; i < total_boxes ; i++ ){ 
           if (checked){   
             document.forms[0].checkBox[i].checked=true; 
            }else{  
             document.forms[0].checkBox[i].checked=false; 
            } 
        }   
    } 
</script>
    <body>
        <FORM> 
            <input type="checkbox" name="checkBox" >one<br> 
            <input type="checkbox" name="checkBox" >two<br> 
            <input type="checkbox" name="checkBox" >three<br> 
            <input type="checkbox" name="checkBox" >four<br> 
            <input type="checkbox" name="checkBox" >five<br> 
            <input type="checkbox" name="checkBox" >six<br> 
            <input type="checkbox" name="checkBox" >seven<br> 
            <input type="checkbox" name="checkBox" >eight<br> 
            <input type="checkbox" name="checkBox" >nine<br>
            <input type="checkbox" name="checkBox" >ten<br>  s
            <input type=button name="CheckAll" value="Select_All" onClick="myFunction(true,10)"> 
            <input type=button name="UnCheckAll" value="UnCheck All Boxes" onClick="myFunction(false,10)"> 
        </FORM> 
    </body>

0

เพิ่มสิ่งนี้ในบล็อครหัสของคุณหรือแม้กระทั่งการคลิกปุ่มของคุณ

$('input:checkbox').attr('checked',false);

0
$(document).ready( function() {
        // Check All
        $('.checkall').click(function () {          
            $(":checkbox").attr("checked", true);
        });
        // Uncheck All
        $('.uncheckall').click(function () {            
            $(":checkbox").attr("checked", false);
        });
    });

-1

เลือกทั้งหมดด้วยตัวเลือกไม่ได้ / ตรวจสอบว่ารายการทั้งหมดเป็น / ไม่ได้ตรวจสอบ

JS:

e = ช่องทำเครื่องหมาย id t = ช่องทำเครื่องหมาย (รายการ) class n = ช่องทำเครื่องหมายตรวจสอบชั้น

function checkAll(e,t,n){jQuery("#"+e).click(function(e){if(this.checked){jQuery("."+t).each(function(){this.checked=true;jQuery("."+n).each(function(){this.checked=true})})}else{jQuery("."+t).each(function(){this.checked=false;jQuery("."+n).each(function(){this.checked=false})})}});jQuery("."+t).click(function(e){var r=jQuery("."+t).length;var i=0;var s=0;jQuery("."+t).each(function(){if(this.checked==true){i++}if(this.checked==false){s++}});if(r==i){jQuery("."+n).each(function(){this.checked=true})}if(i<r){jQuery("."+n).each(function(){this.checked=false})}})}

HTML:

ตรวจสอบคลาสควบคุมทั้งหมด: chkall_ctrl

<input type="checkbox"name="chkall" id="chkall_up" class="chkall_ctrl"/>
<br/>
1.<input type="checkbox" value="1" class="chkall" name="chk[]" id="chk1"/><br/>
2.<input type="checkbox" value="2" class="chkall" name="chk[]" id="chk2"/><br/>
3.<input type="checkbox" value="3" class="chkall" name="chk[]" id="chk3"/><br/>
<br/>
<input type="checkbox"name="chkall" id="chkall_down" class="chkall_ctrl"/>

<script>
jQuery(document).ready(function($)
{
  checkAll('chkall_up','chkall','chkall_ctrl');
  checkAll('chkall_down','chkall','chkall_ctrl');
});
 </script>
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.