zoukankan      html  css  js  c++  java
  • mpvue中限制多选框最多只能选两项

    每次点击的时候判断多选框选中的个数 如果已经选中两个  将所有未选中的项禁用

    <template>

      <checkbox-group class="radio-group" @change="checkChange">
        <checkbox class="checkbox" :value='item.id' v-for="item in treatment" :key="item" :disabled='isDisabled[index]'>{{item.name}}</checkbox>
      </checkbox-group>
    </template>
    import Vue from 'vue'
    export default {
      data () {
        return {
          personChange: [],
          isDisabled: [],
          checkId: []
        }
      },
      methods:{
        checkChange (e) {
          this.personChance = e.target.value
          for (let i = 0; i < this.checkId.length; i++) {
            if (e.target.value.length >= 2 && !e.target.value.includes(this.checkId[i].toString())) {
              Vue.set(this.isDisabled, i, true)
            } else if (e.target.value.length < 2) {
              Vue.set(this.isDisabled, i, false)
            }
          }
        }
      },
      onLoad(){
        wx.request({
          url: '',
          data: {},
          success (res) {
            console.log(res)
            that.treatment = res.data.data
            let isDisabled = []
            let checkId = []
            for (let i = 0; i < res.data.data.length; i++) {
              isDisabled.push(false)
              checkId.push(res.data.data[i].id)
            }
            that.isDisabled = isDisabled
            that.checkId = checkId
          }
        })
      }
    },
    <style lang="wxss">
    label.checkbox {
      padding-left: 20rpx;
    }
    checkbox .wx-checkbox-input{
       22rpx;
      height: 22rpx;
    }

    checkbox .wx-checkbox-input.wx-checkbox-input-checked{
      border: 1rpx solid transparent;
      background-color: #da2728;
    }
     checkbox .wx-checkbox-input.wx-checkbox-input-checked::before{
       22rpx;
      height: 22rpx;
      line-height: 22rpx;
      text-align: center;
      font-size:22rpx;
      color:#fff;
      background: transparent;
      transform: translate(-50%, -50%) scale(1);
      -webkit-transform: translate(-50%, -50%) scale(1);
    }
    </style>
  • 相关阅读:
    DTD
    JVM-学习笔记持续更新
    MySQL用limit代替SQL Server :top
    正则表达式&&Java文本复杂操作
    JVM核心——JVM运行和类加载全过程
    java动态编译——tools.jar问题
    java-基础
    github for windows 简单的客户端托管代码
    【javascript dom读书笔记】 第九章 CSS-DOM
    【精通css读书笔记】 第八章 布局
  • 原文地址:https://www.cnblogs.com/ginelle/p/12155051.html
Copyright © 2011-2022 走看看