微信小程序复选框实现多选一功能过程解析


Posted in Javascript onFebruary 14, 2020

这篇文章主要介绍了微信小程序复选框实现多选一功能过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

功能实现界面

微信小程序复选框实现多选一功能过程解析

data: {
  checkboxItems: [
   { name: '全天(1-8节)', value: 'allday' },
   { name: '上午(1-4节)', value: 'am' },
   { name: '下午(5-8节)', value: 'pm' },
   { name: '晚上(晚自习)', value: 'night' },
  ]
 }

想要实现的功能

四个复选框中只能选一个,且选中另一个会取消其余选中,且能保存选择的value值

JS代码实现

checkboxChange: function (e) {
  var that = this;
  let checkboxValues=null;
  let checkboxItems = this.data.checkboxItems, values = e.detail.value
  for (var i = 0, lenI = checkboxItems.length; i < lenI; ++i) {
   if(checkboxItems[i].value==values[values.length-1]){
    checkboxItems[i].checked=true;
    checkboxValues = checkboxItems[i].value;
   }
   else{
    checkboxItems[i].checked = false;
   }
  }
  console.log(checkboxValues)
  that.setData({ checkboxItems, checkboxValues })
 }

前端代码

<view class="weui-cells weui-cells_after-title">
   <checkbox-group class="weui-flex" bindchange="checkboxChange">
    <label class="weui-cell weui-check__label weui-flex__item" wx:for="{{checkboxItems}}" wx:key="value">
     <checkbox class="weui-check" value="{{item.value}}" checked="{{item.checked}}" />
     <view class="weui-cell__hd weui-check__hd_in-checkbox">
      <icon class="weui-icon-checkbox_circle" type="circle" size="23" wx:if="{{!item.checked}}"></icon>
      <icon class="weui-icon-checkbox_success" type="success" size="23" wx:if="{{item.checked}}"></icon>
     </view>
     <view class="weui-cell__bd">{{item.name}}</view>
    </label>
   </checkbox-group>
  </view>

对应的CSS样式是

WeUI

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery ajax,ashx,json的用法总结
Feb 12 Javascript
深入理解Javascript中this的作用域
Aug 12 Javascript
JavaScript让网页出现渐隐渐显背景颜色的方法
Apr 21 Javascript
谈谈我对JavaScript中typeof和instanceof的深入理解
Dec 25 Javascript
AngularJS 视图详解及示例代码
Aug 17 Javascript
JS实现简单的tab切换选项卡效果
Sep 21 Javascript
JS点击某个图标或按钮弹出文件选择框的实现代码
Sep 27 Javascript
Angular.js中用ng-repeat-start实现自定义显示
Oct 18 Javascript
js 提交form表单和设置form表单请求路径的实现方法
Oct 25 Javascript
浅谈Angular 中何时取消订阅
Nov 22 Javascript
Bootstrap-table使用footerFormatter做统计列功能
Sep 07 Javascript
vue实现分页组件
Jun 16 Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
Feb 14 #Javascript
node事件循环和process模块实例分析
Feb 14 #Javascript
vue+springboot图片上传和显示的示例代码
Feb 14 #Javascript
JavaScript简单编程实例学习
Feb 14 #Javascript
JS实现打砖块游戏
Feb 14 #Javascript
从零使用TypeScript开发项目打包发布到npm
Feb 14 #Javascript
JavaScript中的this原理及6种常见使用场景详解
Feb 14 #Javascript
You might like
建立文件交换功能的脚本(一)
2006/10/09 PHP
PHP 常用函数库和一些实用小技巧
2009/01/01 PHP
smarty缓存用法分析
2014/12/16 PHP
php 替换文章中的图片路径,下载图片到本地服务器的方法
2018/02/06 PHP
PHP children()函数讲解
2019/02/03 PHP
为Plesk PHP7启用Oracle OCI8扩展方法总结
2019/03/29 PHP
css动画效果之animation的常用样式
2021/03/09 HTML / CSS
extjs 学习笔记(二) Ext.Element类
2009/10/13 Javascript
js异常捕获方法介绍
2013/04/10 Javascript
setTimeout()递归调用不加引号出错的解决方法
2014/09/05 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
easyui combotree加载静态数据问题(选不上)解决方法
2016/12/26 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
详解jquery validate实现表单验证 (正则表达式)
2017/01/18 Javascript
详谈表单格式化插件jquery.serializeJSON
2017/06/23 jQuery
vue中引用阿里字体图标的方法
2018/02/10 Javascript
JS事件流与事件处理程序实例分析
2019/08/16 Javascript
pycharm安装和首次使用教程
2018/08/27 Python
python通过paramiko复制远程文件及文件目录到本地
2019/04/30 Python
python多线程下信号处理程序示例
2019/05/31 Python
pyQT5 实现窗体之间传值的示例
2019/06/20 Python
python多线程http压力测试脚本
2019/06/25 Python
Python3 tkinter 实现文件读取及保存功能
2019/09/12 Python
详解基于python-django框架的支付宝支付案例
2019/09/23 Python
Python同时处理多个异常的方法
2020/07/28 Python
Python用requests库爬取返回为空的解决办法
2021/02/21 Python
css3 column实现卡片瀑布流布局的示例代码
2018/06/22 HTML / CSS
手工制作的音乐盒:Music Box Attic
2019/09/05 全球购物
Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型
2013/10/30 面试题
铁路安全反思材料
2014/12/24 职场文书
银行保安拾金不昧表扬稿
2015/05/05 职场文书
工程质量保证书
2015/05/09 职场文书
家长会感言
2015/08/01 职场文书
在项目中使用redis做缓存的一些思路
2021/09/14 Redis
SQL SERVER触发器详解
2022/02/24 SQL Server
vue里使用create, mounted调用方法
2022/04/26 Vue.js