微信小程序实现多个按钮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 相关文章推荐
jquery 图片上传按比例预览插件集合
May 28 Javascript
JavaScript中去掉数组中的重复值的实现方法
Aug 03 Javascript
js获取select标签的值且兼容IE与firefox
Dec 30 Javascript
javascript中的取反再取反~~没有意义
Apr 06 Javascript
js时钟翻牌效果实现代码分享
Jul 31 Javascript
javascript省市级联功能实现方法实例详解
Oct 20 Javascript
Jquery轮播效果实现过程解析
Mar 30 Javascript
基于JQuery实现分隔条的功能
Jun 17 Javascript
WEB开发之注册页面验证码倒计时代码的实现
Dec 15 Javascript
Angular下H5上传图片的方法(可多张上传)
Jan 09 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
May 24 Javascript
Vue的状态管理vuex使用方法详解
Feb 05 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 禁止页面缓存输出
2009/01/07 PHP
php通过COM类调用组件的实现代码
2012/01/11 PHP
PHP常用技巧总结(附函数代码)
2012/02/04 PHP
php+ajax导入大数据时产生的问题处理
2014/06/11 PHP
Yii框架组件和事件行为管理详解
2016/05/20 PHP
php实现用户注册密码的crypt加密
2017/06/08 PHP
关于php unset对json_encode的影响详解
2018/11/14 PHP
关于window.pageYOffset和document.documentElement.scrollTop
2011/04/05 Javascript
jQuery查询数据返回object和字符串影响原因是什么
2013/08/09 Javascript
原生js模拟淘宝购物车项目实战
2015/11/18 Javascript
全面解析Bootstrap中Carousel轮播的使用方法
2016/06/13 Javascript
JS控制文本域只读或可写属性的方法
2016/06/24 Javascript
原生js实现轮播图的示例代码
2017/02/20 Javascript
微信小程序 解析网页内容详解及实例
2017/02/22 Javascript
js, jQuery实现全选、反选功能
2017/03/08 Javascript
js解决软键盘遮挡输入框的问题分享
2017/12/19 Javascript
浅谈webpack组织模块的原理
2018/03/10 Javascript
AngularJS日期格式化常见操作实例分析
2018/05/17 Javascript
webpack4与babel配合使es6代码可运行于低版本浏览器的方法
2018/10/12 Javascript
node+express框架中连接使用mysql(经验总结)
2018/11/10 Javascript
vue从零实现一个消息通知组件的方法详解
2020/03/16 Javascript
Python类的多重继承问题深入分析
2014/11/09 Python
Python while、for、生成器、列表推导等语句的执行效率测试
2015/06/03 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
2017/05/16 Python
Python判断一个文件夹内哪些文件是图片的实例
2018/12/07 Python
flask框架url与重定向操作实例详解
2020/01/25 Python
python读取多层嵌套文件夹中的文件实例
2020/02/27 Python
django 读取图片到页面实例
2020/03/27 Python
python对指定字符串逆序的6种方法(小结)
2020/04/02 Python
Python排序函数的使用方法详解
2020/12/11 Python
北京某公司的.net笔试题
2014/03/20 面试题
金融专业毕业生推荐信
2013/11/26 职场文书
2015入党自荐书范文
2015/03/05 职场文书
秀!学妹看见都惊呆的Python小招数!【详细语言特性使用技巧】
2021/04/27 Python
一篇文章弄懂Python关键字、标识符和变量
2021/07/15 Python
Java移除无效括号的方法实现
2021/08/07 Java/Android