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


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优化效率 提升性能解决方案
Sep 06 Javascript
理解javascript中的回调函数(callback)
Sep 02 Javascript
node.js下when.js 的异步编程实践
Dec 03 Javascript
jQuery实现数秒后自动提交form的方法
Mar 05 Javascript
JS拖拽组件学习使用
Jan 19 Javascript
JavaScript中的原型prototype完全解析
May 10 Javascript
jQuery基础知识点总结(DOM操作)
Jun 01 Javascript
Vuejs第八篇之Vuejs组件的定义实例解析
Sep 05 Javascript
利用VS Code开发你的第一个AngularJS 2应用程序
Dec 15 Javascript
vue.js中proxyTable 转发请求的实现方法
Sep 20 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
Jul 29 Javascript
Vue3配置axios跨域实现过程解析
Nov 25 Vue.js
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
php中DOMElement操作xml文档实例演示
2013/03/26 PHP
基于php缓存的详解
2013/05/15 PHP
php中Snoopy类用法实例
2015/06/19 PHP
Zend Framework教程之Zend_Config_Ini用法分析
2016/03/23 PHP
Win7环境下Apache连接MySQL提示连接已重置的解决办法
2017/05/09 PHP
浅谈laravel中的关联查询with的问题
2019/10/10 PHP
Javascript - HTML的request类
2007/01/09 Javascript
JS类中定义原型方法的两种实现的区别
2007/03/08 Javascript
jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
2013/12/05 Javascript
javascript作用域链(Scope Chain)用法实例解析
2015/11/30 Javascript
JS实现六位字符密码输入器功能
2016/08/19 Javascript
JavaScript简单生成 N~M 之间随机数的方法
2017/01/13 Javascript
vue-router实现组件间的跳转(参数传递)
2017/11/07 Javascript
vue-router项目实战总结篇
2018/02/11 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
mock.js模拟前后台交互
2019/07/25 Javascript
[02:23]DOTA2英雄基础教程 幻影长矛手
2013/12/09 DOTA
[02:56]DOTA2上海特锦赛小组赛解说FreeAgain采访花絮
2016/02/27 DOTA
[03:12]完美世界DOTA2联赛PWL DAY6集锦
2020/11/05 DOTA
详解Python实现多进程异步事件驱动引擎
2017/08/25 Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
2017/12/18 Python
python使用KNN算法手写体识别
2018/02/01 Python
使用python生成目录树
2018/03/29 Python
python/sympy求解矩阵方程的方法
2018/11/08 Python
Python math库 ln(x)运算的实现及原理
2019/07/17 Python
python自动分箱,计算woe,iv的实例代码
2019/11/22 Python
Traffic People官网:女式花裙、上衣和连身裤
2020/10/12 全球购物
一份Java笔试题
2012/02/21 面试题
extern是什么意思
2016/03/10 面试题
售后专员岗位职责
2013/12/08 职场文书
创业计划书六个要素
2013/12/26 职场文书
先进集体事迹材料
2014/02/17 职场文书
读书伴我成长演讲稿
2014/05/07 职场文书
商家认证委托书格式
2014/10/16 职场文书
2014年初三班主任工作总结
2014/12/05 职场文书
南极大冒险观后感
2015/06/05 职场文书