微信小程序 label 标签 组件
完整微信小程序(Java后端) 技术贴目录清单页面(必看)
用来改进表单组件的可用性。
使用for属性找到对应的id,或者将控件放在该标签下,当点击时,就会触发对应的控件。 for优先级高于内部控件,内部有多个控件的时候默认触发第一个控件。 目前可以绑定的控件有:button, checkbox, radio, switch。
| 属性 | 类型 | 默认值 | 必填 | 说明 | 最低版本 |
|---|---|---|---|---|---|
| for | string | 否 | 绑定控件的 id | 1.0.0 |
示例代码
在开发者工具中预览效果
index.wxml
<view class="section section_gap">
<view class="section__title">表单组件在label内view>
<checkbox-group class="group" bindchange="checkboxChange"><view class="label-1" wx:for="{{checkboxItems}}"><label><checkbox hidden value="{{item.name}}" checked="{{item.checked}}">checkbox><view class="label-1__icon"><view class="label-1__icon-checked" style="opacity:{{item.checked ? 1: 0}}">view>view><text class="label-1__text">{{item.value}}text>label>view>
checkbox-group>
view><view class="section section_gap">
<view class="section__title">label用for标识表单组件view>
<radio-group class="group" bindchange="radioChange"><view class="label-2" wx:for="{{radioItems}}"><radio id="{{item.name}}" hidden value="{{item.name}}" checked="{{item.checked}}">radio><view class="label-2__icon"><view class="label-2__icon-checked" style="opacity:{{item.checked ? 1: 0}}">view>view><label class="label-2__text" for="{{item.name}}"><text>{{item.name}}text>label>view>
radio-group>
view>
index.js
Page({data: {checkboxItems: [{ name: 'USA', value: '美国' },{ name: 'CHN', value: '中国', checked: 'true' },{ name: 'BRA', value: '巴西' },{ name: 'JPN', value: '日本', checked: 'true' },{ name: 'ENG', value: '英国' },{ name: 'TUR', value: '法国' },],radioItems: [{ name: 'USA', value: '美国' },{ name: 'CHN', value: '中国', checked: 'true' },{ name: 'BRA', value: '巴西' },{ name: 'JPN', value: '日本' },{ name: 'ENG', value: '英国' },{ name: 'TUR', value: '法国' },],hidden: false},checkboxChange: function (e) {var checked = e.detail.valueconsole.log(checked)var changed = {}for (var i = 0; i < this.data.checkboxItems.length; i++) {if (checked.indexOf(this.data.checkboxItems[i].name) !== -1) {changed['checkboxItems[' + i + '].checked'] = true} else {changed['checkboxItems[' + i + '].checked'] = false}}this.setData(changed)},radioChange: function (e) {var checked = e.detail.valuevar changed = {}for (var i = 0; i < this.data.radioItems.length; i++) {if (checked.indexOf(this.data.radioItems[i].name) !== -1) {changed['radioItems[' + i + '].checked'] = true} else {changed['radioItems[' + i + '].checked'] = false}}this.setData(changed)}
})
运行效果:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kQBVm7Un-1622384672422)(image-20210529133612798.png)]](https://img-blog.csdnimg.cn/20210530222443132.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Nhb2xpMjAxMzE0,size_16,color_FFFFFF,t_70)
微信搜一搜【java1234】关注这个放荡不羁的程序员,关注后回复【资料】有我准备的一线大厂笔试面试资料以及简历模板。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
