Discuss / JavaScript / 感觉一点都不简洁

感觉一点都不简洁

Topic source

      //隐藏不全选

      ;(() => {

        $('.deselectAll').hide()

      })()

      //获取全选按钮

      var ischecked = $('#test-form input:first')

      //所有input标签

      let Inputs = $('#test-form input')

      //获取下列按钮

      var Checklang = $('#test-form input[name=lang]')

      //全选按钮绑定事件

      ischecked.on('change', function () {

        if (ischecked.is(':checked')) {

          Inputs.prop('checked', true)

          $('.deselectAll').show()

          $('span.selectAll').hide()

        } else {

          Inputs.prop('checked', false)

          $('.deselectAll').hide()

          $('span.selectAll').show()

        }

      })

      //反选按钮事件

      $('.invertSelect').on('click', function () {

        Checklang.each(function (index, values) {

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

            $(values).prop('checked', false)

          } else {

            $(values).prop('checked', true)

          }

        })

        determination()

      })

      //每个单独按钮事件

      function determination() {

        //存储选中的个数

        var checkedLengths = []

        Checklang.each(function (index, values) {

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

            checkedLengths.push(values.value)

          }

        })

        if (checkedLengths.length >= 5) {

          ischecked.prop('checked', true)

          $('.deselectAll').show()

          $('span.selectAll').hide()

        } else {

          ischecked.prop('checked', false)

          $('.deselectAll').hide()

          $('span.selectAll').show()

        }

      }

      //下列绑定按钮事件

      Checklang.on('change', determination)


  • 1

Reply