微信小程序实现多个按钮toggle功能的实例


Posted in Javascript onJune 13, 2017

微信小程序实现多个按钮toggle功能的实例

如下图所示,实现该按钮toggle功能。

微信小程序实现多个按钮toggle功能的实例

百度上很多都是只设置一个按钮的toggle,所以我现在来稍微总结下:多个按钮如何实现自身的toggle功能。

原理:

1,列表展示的时候,我们会用wx:for 来循环数据,那么我们就会得到相应的当前的第几个数据(即 wx:key="index")

2.在每一个数据里面添加一个toggle的属性,toggle=false  则不展示,

3.设置一个点击方法,获取当前按钮所在的是第几个数据,然后将相应的toggle取反,然后将修改后的数据重新写进去 (我出错的地方就在这)

4. 在wxml页面判断toggle的值是true/false ,然后修改相应的class名

js代码:

Page({ 
 data:{ 
  datas:[] 
 }, 
 onLoad:function(options){ 
  var that=this; 
  API.my_ajax('',function(res){ //用mock.js 设置的模拟数据调用格式 
   // console.log(res); 
   var listData=res.data; 
   for(var i=0;i<listData.length;i++){ 
    listData[i]['toggle']=false; //添加toggle 属性 
   } 
   that.setData({ 
    datas:listData 
   }) 
   // console.log(listData) 
  }) 
 }, 
 showBtn:function(e){ 
  console.log(e);  
  console.log(this);  
 //这两个console.log 可以查看当前方法里面所有的数据,可以查找一下我们所需要的内容是否有在里面,底下的index 就是这样找到的 
 
  var a=e.currentTarget.dataset.index; 
  var b=this.data.datas[a].toggle; 
  this.data.datas[a].toggle=!b; 
 
  //设置之后我们要把数据从新添回去 
  this.setData({ 
   datas:this.data.datas 
  })  
 } 
})

wxml代码:

<!--使用二维码按钮--> 
      <label class="icon_qrcode_wrap" data-index="{{index}}" bindtap="showBtn"> 
        <text>使用规格及二维码</text> 
        <image class="icon_right" src="../../images/up.png"></image> 
      </label> 
 
      <!--弹出二维码样式--> 
      <view class="qrcode_show_wrap {{item.toggle==true ? '':'none'}}"> 
        <view class="qrcode_container"> 
          <!--<image class="qrcode_big_bg"src="../../images/qrcode_black_bg.png"></image>--> 
          <view class="block_qrcode_wrap"> 
            <image class="tiaoma" src="../../images/tiao_code.png"></image> 
            <image class="rqcode" src="../../images/rq_code_img.png"></image> 
            <text style="display:block;" class="fs12">erwr43545</text> 
          </view> 
          <text class="rq_code_title cfff fs13">使用规则</text> 
          <text class="cfff code_txt">就掉粉丝活生生的谁让他和人文就掉粉丝活生生的谁让他和人文就掉粉丝活生生的谁让他和人文</text> 
        </view> 
      </view> 
    </view>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
javascript解决innerText浏览器兼容问题思路代码
May 17 Javascript
Javascript常用字符串判断函数代码分享
Dec 08 Javascript
简述Matlab中size()函数的用法
Mar 20 Javascript
动态加载js、css的简单实现代码
May 26 Javascript
利用jQuery的动画函数animate实现豌豆发射效果
Aug 28 Javascript
使用vue-resource进行数据交互的实例
Sep 02 Javascript
微信小程序实现分享到朋友圈功能
Jul 19 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
Aug 08 Javascript
JavaScript封闭函数及常用内置对象示例
May 13 Javascript
Vue分页器实现原理详解
Jun 28 Javascript
Vue this.$router.push(参数)实现页面跳转操作
Sep 09 Javascript
JavaScript 如何在浏览器中使用摄像头
Dec 02 Javascript
JavaScript基于扩展String实现替换字符串中index处字符的方法
Jun 13 #Javascript
微信小程序--组件(swiper)详细介绍
Jun 13 #Javascript
Vue.js实现微信过渡动画左右切换效果
Jun 13 #Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
Jun 13 #Javascript
基于pako.js实现gzip的压缩和解压功能示例
Jun 13 #Javascript
基于vue2框架的机器人自动回复mini-project实例代码
Jun 13 #Javascript
深究AngularJS中ng-drag、ng-drop的用法
Jun 12 #Javascript
You might like
PHP学习 运算符与运算符优先级
2008/06/15 PHP
强制PHP命令行脚本单进程运行的方法
2014/04/15 PHP
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
jQuery插件-jRating评分插件源码分析及使用方法
2012/12/28 Javascript
浅析Node.js中使用依赖注入的相关问题及解决方法
2015/06/24 Javascript
轻量级网页遮罩层jQuery插件用法实例
2015/07/31 Javascript
JavaScript中this的9种应用场景及三种复合应用场景
2015/09/12 Javascript
谷歌Chrome浏览器扩展程序开发小记
2016/01/06 Javascript
基于JavaScript实现表单密码的隐藏和显示出来
2016/03/02 Javascript
IE8 内存泄露(内存一直增长 )的原因及解决办法
2016/04/06 Javascript
gulp-htmlmin压缩html的gulp插件实例代码
2016/06/06 Javascript
基于jQuery实现歌词滚动版音乐播放器的代码
2016/09/17 Javascript
微信小程序去哪里找 小程序到底如何使用(附小程序名单)
2017/01/09 Javascript
使用node.js搭建服务器
2017/05/20 Javascript
仿淘宝JSsearch搜索下拉深度用法
2018/01/15 Javascript
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
详解React中setState回调函数
2018/06/14 Javascript
Vue中的组件及路由使用实例代码详解
2019/05/22 Javascript
vue 使用vant插件做tabs切换和无限加载功能的实现
2020/11/04 Javascript
[02:12]DOTA2英雄基础教程 变体精灵
2013/12/16 DOTA
Python实现分割文件及合并文件的方法
2015/07/10 Python
对pandas replace函数的使用方法小结
2018/05/18 Python
python删除列表元素的三种方法(remove,pop,del)
2019/07/22 Python
Python数据可视化实现正态分布(高斯分布)
2019/08/21 Python
Python logging模块进行封装实现原理解析
2020/08/07 Python
在weblogic中发布ejb需涉及到哪些配置文件
2012/01/17 面试题
求职简历自荐信
2013/10/20 职场文书
中式面点餐厅创业计划书
2014/01/29 职场文书
公司年会搞笑主持词
2014/03/24 职场文书
保密工作目标责任书
2014/07/28 职场文书
党员群众路线对照检查材料思想汇报
2014/09/17 职场文书
五好家庭申报材料
2014/12/20 职场文书
2015年世界水日活动总结
2015/02/09 职场文书
歼十出击观后感
2015/06/11 职场文书
付款证明格式范文
2015/06/19 职场文书
SQL语句中JOIN的用法场景分析
2021/07/25 SQL Server