小程序多选框选中与未选中(筛选)

微信   2025-01-11 13:33   75   0  

20077_br19_1907.png

index.wxml

<view>
  <checkbox-group name="checkbox" class="check">
    <label bindtap='clicks' wx:for="{{checks}}" wx:key="{{checks}}" wx:for-index="index" data-index="{{index}}" class='{{item.checked?"is_checked":""}}'>
      <checkbox value="{{item.name}}" data-val="{{item.name}}" hidden='false' checked='{{item.checked}}' /> {{item.name}}
    </label>
  </checkbox-group>
  <input style='display:none' maxlength="20" name="roomlabel" placeholder='请输入职位名称' value=" {{checks[name]}}" />
</view>


index.js

Page({
  data: {
    checks: [{
        name: "投影仪",
        value: '0',
        checked: false
      },
      {
        name: "电视机",
        value: '1',
        checked: false
      },
      {
        name: "空调",
        value: '2',
        checked: false
      },
      {
        name: "Wifi",
        value: '3',
        checked: false
      },
      {
        name: "电脑",
        value: '4',
        checked: false
      },
      {
        name: "舞把杆",
        value: '5',
        checked: false
      },
      {
        name: "镜面墙",
        value: '6',
        checked: false
      },
      {
        name: "音响",
        value: '7',
        checked: false
      },
      {
        name: "桌椅",
        value: '8',
        checked: false
      },
      {
        name: "其他",
        value: '9',
        checked: false
      }
    ]
  },

  clicks: function (e) {
    let index = e.currentTarget.dataset.index;
    let arrs = this.data.checks;
    if (arrs[index].checked == false) {
      arrs[index].checked = true;
    } else {
      arrs[index].checked = false;
    }
    this.setData({
      checks: arrs
    })
    // console.log(e)
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})


index.wxss

label {
  border: 2rpx solid #aaaaaa;
}

.check {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;

}

.check label {
  width: 120rpx;
  height: 60rpx;
  border-radius: 8rpx;
  /* background-color: #fff;   */
  display: flex;
  align-items: center;
  margin: 0 5rpx;
  justify-content: center;
  /* color: #aaa; */
  margin-top: 20rpx;
}

.is_checked {
  background-color: #14a1fd;
  opacity: 0.4;
  color: #fff;
  border: 2rpx solid #fff;
}

.is_checked>checkbox {
  color: red;
}


来源:https://blog.csdn.net/onion_line/article/details/80537996



博客评论
还没有人评论,赶紧抢个沙发~
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。