微信小程序实现多个按钮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对象及属性
Feb 13 Javascript
JavaScript页面刷新与弹出窗口问题的解决方法
Mar 02 Javascript
js页面滚动时层智能浮动定位实现(jQuery/MooTools)
Aug 23 Javascript
jQuery 顶部导航跟随滚动条滚动固定浮动在顶部
Jun 06 Javascript
jQuery中:button选择器用法实例
Jan 04 Javascript
js如何实现淡入淡出效果
Nov 18 Javascript
jQuery插件实现文字无缝向上滚动效果代码
Feb 25 Javascript
基于jQuery实现发送短信验证码后的倒计时功能(无视页面关闭)
Sep 02 Javascript
vue二级路由设置方法
Feb 09 Javascript
angularjs中$http异步上传Excel文件方法
Feb 23 Javascript
JavaScript设计模式之单例模式简单实例教程
Jul 02 Javascript
JS实现的进制转换,浮点数相加,数字判断操作示例
Nov 09 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
我的论坛源代码(八)
2006/10/09 PHP
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
php+ajax注册实时验证功能
2016/07/20 PHP
PHP 获取 ping 时间的实现方法
2017/09/29 PHP
windows环境下使用Composer安装ThinkPHP5
2018/05/18 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
javascript下拉列表菜单的实现方法
2015/11/18 Javascript
jQuery实现鼠标经过时高亮,同时其他同级元素变暗的效果
2016/09/18 Javascript
JavaScript关联数组用法分析【概念、定义、遍历】
2017/03/15 Javascript
微信小程序利用co处理异步流程的方法教程
2017/05/20 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
vue基础之data存储数据及v-for循环用法示例
2019/03/08 Javascript
Vue项目结合Vue-layer实现弹框式编辑功能(实例代码)
2020/03/11 Javascript
axios封装与传参示例详解
2020/10/18 Javascript
antd Form组件方法getFieldsValue获取自定义组件的值操作
2020/10/29 Javascript
从Python的源码来解析Python下的freeblock
2015/05/11 Python
解析Python中while true的使用
2015/10/13 Python
python爬虫入门教程--快速理解HTTP协议(一)
2017/05/25 Python
Python实现图片尺寸缩放脚本
2018/03/10 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
完美解决Python matplotlib绘图时汉字显示不正常的问题
2019/01/29 Python
什么是Python中的顺序表
2020/06/02 Python
Django中日期时间型字段进行年月日时分秒分组统计
2020/11/27 Python
预备党员2014全国两会学习心得体会
2014/03/10 职场文书
优秀团干部个人事迹
2014/05/29 职场文书
扬尘污染防治方案
2014/06/15 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
三严三实对照检查材料
2014/09/22 职场文书
民主评议党员登记表自我评价
2014/10/20 职场文书
个人工作年终总结
2015/03/09 职场文书
2015年计划生育协会工作总结
2015/05/13 职场文书
走进科学观后感
2015/06/18 职场文书
拿破仑传读书笔记
2015/07/01 职场文书
感谢信的技巧及范例
2019/05/15 职场文书
使用nginx动态转换图片大小生成缩略图
2021/03/31 Servers
SQL Server中搜索特定的对象
2022/05/25 SQL Server