【微信小程序】checkbox复选框(89/100)

在这里插入图片描述
UI布局:

<!--pages/CheckBox/CheckBox.wxml-->
<view class="page-section-title">默认样式</view>
<checkbox value="cb" checked="true" />选中
<checkbox value="cb" />未选中

<view>推荐展示样式</view>
<checkbox-group bindchange="checkboxChange">
  <label  wx:for="{{items}}" wx:key="{{item.value}}">
    <view >
      <checkbox value="{{item.value}}" checked="{{item.checked}}" />
    </view>
    <view >{{item.name}}</view>
  </label>
</checkbox-group>

数据模型& 控制器如下:

// pages/CheckBox/CheckBox.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    items: [
      {value: 'BJ', name: '北京'},
      {value: 'HeB', name: '河北', checked: 'true'},
      {value: 'HeNan', name: '河南'},
      {value: 'HuB', name: '湖北'},
      {value: 'HuNan', name: '湖南'},
      {value: 'ANH', name: '安徽'}
    ]
  },
  checkboxChange(e) {
    console.log('checkbox发生change事件,携带value值为:', e.detail.value)
    const items = this.data.items
    const values = e.detail.value
    for (let i = 0, lenI = items.length; i < lenI; ++i) {
      items[i].checked = false
      for (let j = 0, lenJ = values.length; j < lenJ; ++j) {
        if (items[i].value === values[j]) {
          items[i].checked = true
          break
        }
      }
    }
    this.setData({
      items
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

功能描述

多选项目。

属性说明

属性 类型 默认值 必填 说明 最低版本
value string 否 checkbox标识,选中时触发checkbox-group的 change 事件,并携带 checkbox 的 value 1.0.0

disabled boolean false 否 是否禁用 1.0.0

checked boolean false 否 当前是否选中,可用来设置默认选中 1.0.0

color string #09BB07 否 checkbox的颜色,同 css 的color 1.0.0

产品推荐

推荐理由

postman在国内使用已经越来越困难:
1、登录问题严重
2、Mock功能服务基本没法使用
3、版本更新功能已很匮乏
4、某些外力因素导致postman以后能否使用风险较大
出于以上考虑因此笔者自己开发了一款api调试开发工具SmartApi,满足基本日常开发调试api需求

简介

历时一年半多开发终于smartApi-v1.0.0版本在2023-09-15晚十点正式上线
smartApi是一款对标国外的postman的api调试开发工具,由于开发人力就作者一个所以人力有限,因此v1.0.0版本功能进行精简,大功能项有:

  • api参数填写
  • api请求响应数据展示
  • PDF形式的分享文档
  • Mock本地化解决方案
  • api列表数据本地化处理
  • 再加上UI方面的打磨

为了更好服务大家把之前的公众号和软件激活结合,如有疑问请大家反馈到公众号即可,下个版本30%以上的更新会来自公众号的反馈。
嗯!先解释不上服务端原因,API调试工具的绝大多数时候就是一个数据模型、数据处理、数据模型理解共识的问题解决工具,所以作者结合自己十多年开发使用的一些痛点来打造的,再加上服务端开发一般是面向企业的,作者目前没有精力和时间去打造企业服务。再加上没有资金投入所以服务端开发会滞后,至于什么时候会进行开发,这个要看募资情况和用户反馈综合考虑。虽然目前国内有些比较知名的api工具了,但作者使用后还是觉得和实际使用场景不符。如果有相关吐槽也可以在作者的公众号里反馈蛤!
下面是一段smartApi使用介绍:
在这里插入图片描述

下载地址:

https://pan.baidu.com/s/1kFAGbsFIk3dDR64NwM5y2A?pwd=csdn

针对您的问题,可能是因为您的代码中的索引值出现了问题,导致选择第七个总是显示最后一个。以下是一个简单的示例代码,可能会对您有所帮助: ```html <view class="checkbox-group"> <label wx:for="{{checkboxItems}}" wx:key="{{item.value}}" class="checkbox"> <checkbox value="{{item.value}}" checked="{{item.checked}}" bindchange="checkboxChange">{{item.name}}</checkbox> </label> </view> ``` ```javascript Page({ data: { checkboxItems: [ { name: '选项1', value: '1', checked: false }, { name: '选项2', value: '2', checked: false }, { name: '选项3', value: '3', checked: false }, { name: '选项4', value: '4', checked: false }, { name: '选项5', value: '5', checked: false }, { name: '选项6', value: '6', checked: false }, { name: '选项7', value: '7', checked: false }, ], }, checkboxChange: function (e) { const checkboxItems = this.data.checkboxItems; const values = e.detail.value; for (let i = 0, lenI = checkboxItems.length; i < lenI; ++i) { checkboxItems[i].checked = false; for (let j = 0, lenJ = values.length; j < lenJ; ++j) { if (checkboxItems[i].value === values[j]) { checkboxItems[i].checked = true; break; } } } this.setData({ checkboxItems, }); }, }); ``` 在这个示例代码中,我们使用了 `wx:for` 来循环渲染复选框选项,使用 `checkbox` 组件来实现复选框,使用 `checked` 属性来控制是否选中。在选择状态发生改变时,我们通过 `bindchange` 事件和 `checkboxChange` 方法来处理复选框的选择状态,并更新数据。您可以根据自己的实际需求进行修改和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lichong951

你的鼓励决定更新的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值