checkbox判断是否选中,赋值,及全选事件 jquery

2018-06-22  本文已影响0人  梦有你而美_118a

jquery判断checkbox是否选中的方法:

.attr('checked'); //1.5-返回:true/false;1.6+返回:'checked' / 'undefined';

.prop('checked'); //16+:true/false;

.is(':checked'); //所有版本:true/false;

jquery checkbox为赋值选中的写法:

 .attr('checked','checked');

 .attr('checked',true);

 .prop('checked', checked);

 .prop('checked', true);

jquery checkbox的全选事件:

1.html代码如下:

<input type="checkbox" class="check" value="checkbox1"/>checkbox1<br/>

<input type="checkbox" class="check" value="checkbox2"/>checkbox2<br/>

<input type="checkbox" class="check" value="checkbox3"/>checkbox3<br/>

<input type="checkbox" class="check" value="checkbox4"/>checkbox4<br/>

<input type="checkbox" id="all" value="all">全部

2.js代码如下:

<script>

var checks =$('.check');

var checkedList = [];  // 用来存下所有选中元素的值

//全选按钮改变(也可用click事件)改变checked的值

 $('#all').change(function () {

         if ($(this).is(':checked')) {

                $(this).prop('checked', true);

                checks .prop('checked', true);

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

                        checkedList.push(checks[i].value)

                }

         }else {

               $(this).prop('checked', false);

                checks .prop('checked', false);

                checkedList = [];

          }

 });

//单个改变

checks.change(function () {

      if ($(this).is(':checked')) {

              $(this).prop('checked', true);

              checkedList.push($(this).val());

              if (checkedList.length === checks.length) {

                      $('#all').prop('checked', true);

                }

       }else {

               $(this).prop('checked', false);

               var index = checkedList.indexOf($(this).val());

               checkedList.splice(index, 1);

                $('#all').prop('checked', false);

        }

 });

</script>

上一篇下一篇

猜你喜欢

热点阅读