checkbox-group

多项选择器,内部由多个 checkbox 组成。

属性说明

属性名类型默认值说明
@changeEventHandle<checkbox-group>中选中项发生改变是触发 change 事件,detail = {value:[选中的checkbox的value的数组]}

checkbox

多选项目。

属性说明

属性名类型默认值说明
valueString<checkbox> 标识,选中时触发 <checkbox-group> 的 change 事件,并携带 <checkbox> 的 value。
disabledBooleanfalse是否禁用
checkedBooleanfalse当前是否选中,可用来设置默认选中
colorColorcheckbox的颜色,同css的color

示例

  1. <template>
  2. <view>
  3. <view class="uni-padding-wrap uni-common-mt">
  4. <view class="uni-title uni-common-mt">默认样式</view>
  5. <view>
  6. <checkbox-group>
  7. <label>
  8. <checkbox value="cb" checked="true" />选中
  9. </label>
  10. <label>
  11. <checkbox value="cb" />未选中
  12. </label>
  13. </checkbox-group>
  14. </view>
  15. <view class="uni-title uni-common-mt">不同颜色和尺寸的checkbox</view>
  16. <view>
  17. <checkbox-group>
  18. <label>
  19. <checkbox value="cb" checked="true" color="#FFCC33" style="transform:scale(0.7)" />选中
  20. </label>
  21. <label>
  22. <checkbox value="cb" color="#FFCC33" style="transform:scale(0.7)" />未选中
  23. </label>
  24. </checkbox-group>
  25. </view>
  26. </view>
  27. <view class="uni-padding-wrap">
  28. <view class="uni-title uni-common-mt">
  29. 推荐展示样式
  30. <text>\n使用 uni-list 布局</text>
  31. </view>
  32. </view>
  33. <view class="uni-list">
  34. <checkbox-group @change="checkboxChange">
  35. <label class="uni-list-cell uni-list-cell-pd" v-for="item in items" :key="item.value">
  36. <view>
  37. <checkbox :value="item.value" :checked="item.checked" />
  38. </view>
  39. <view>{{item.name}}</view>
  40. </label>
  41. </checkbox-group>
  42. </view>
  43. </view>
  44. </template>
  45. <script>
  46. export default {
  47. data() {
  48. return {
  49. title: 'checkbox 复选框',
  50. items: [{
  51. value: 'USA',
  52. name: '美国'
  53. },
  54. {
  55. value: 'CHN',
  56. name: '中国',
  57. checked: 'true'
  58. },
  59. {
  60. value: 'BRA',
  61. name: '巴西'
  62. },
  63. {
  64. value: 'JPN',
  65. name: '日本'
  66. },
  67. {
  68. value: 'ENG',
  69. name: '英国'
  70. },
  71. {
  72. value: 'FRA',
  73. name: '法国'
  74. }
  75. ]
  76. }
  77. },
  78. methods: {
  79. checkboxChange: function (e) {
  80. var items = this.items,
  81. values = e.detail.value;
  82. for (var i = 0, lenI = items.length; i < lenI; ++i) {
  83. const item = items[i]
  84. if(values.includes(item.value)){
  85. this.$set(item,'checked',true)
  86. }else{
  87. this.$set(item,'checked',false)
  88. }
  89. }
  90. }
  91. }
  92. }
  93. </script>
  94. <style>
  95. .uni-list-cell {
  96. justify-content: flex-start
  97. }
  98. </style>

uniapp

示例代码说明:以上示例代码从hello uni-app示例中复制,涉及的css样式在hello uni-app的app.vue和uni.css中

预览H5效果:使用浏览器的手机模式访问https://uniapp.dcloud.io/h5/pages/component/checkbox/checkbox

注意

  • checkbox的默认颜色,在不同平台不一样。微信小程序是绿色的,头条小程序为红色,其他平台是蓝色的。更改颜色使用color属性。
  • 如需调节checkbox大小,可通过css的scale方法调节,如缩小到70%style="transform:scale(0.7)"

发现错误?想参与编辑?在 GitHub 上编辑此页面!