微信小程序 点击控件后选中其它反选实例详解


Posted in Javascript onFebruary 21, 2017

微信小程序 点击控件后选中其它反选实例详解

前言:

如果需要实现进来进行给按钮加上买一送一的样式,或者单击就选中单个按钮,只能靠css结合js进行控制了,小程序暂时没有这样的控件。

实现效果图:

微信小程序 点击控件后选中其它反选实例详解

微信小程序进来的时候自动进行按钮样式的初始化,这个需要一个字段做判断,加上正则表达式wxml文件:

<block wx:for="{{liuliangItems}}">
      <block wx:if="{{item.one2one == 1}}">
       <button class="{{item.changeColor?'selected2':'selected1'}}" type="default" id="{{item.price}}" data-id="{{item.name}}" data-one="{{item.one2one}}" data-orderid="{{item.id}}" data-number="1" bindtap="setPrice">{{item.name}}</button>
      </block>
      <block wx:else>
       <button class="{{item.changeColor?'selected':'normal'}}" type="default" id="{{item.price}}" data-id="{{item.name}}" data-one="{{item.one2one}}" data-orderid="{{item.id}}" data-number="1" bindtap="setPrice">{{item.name}}</button>
      </block>
     </block>

wxss文件

.normal{
 box-sizing: border-box;
 flex: 0 0 21%;
 margin: 5px 5px;
 height: 50px;
 color:#1aad19;
 border:1px solid #1aad19;
 background-color:transparent;
}
.selected{
 box-sizing: border-box;
 flex: 0 0 21%;
 margin: 5px 5px;
 height: 50px;
 background-color: #F75000;
 color: white;
}
.selected1{
 box-sizing: border-box;
 flex: 0 0 21%;
 margin: 5px 5px;
 height: 50px;
 background-color: transparent;
 border:1px solid #1aad19;
 color:#1aad19;
 background-image: url(https://wxcx.llzt.net/images/hot.png) ;
 background-position:31px 0px;
 background-repeat:no-repeat;
 background-size:62%;
}
.selected2{
 box-sizing: border-box;
 flex: 0 0 21%;
 margin: 5px 5px;
 height: 50px;
 background-color: #F75000;
 color: white;
 background-image: url(https://wxcx.llzt.net/images/hot.png);
 background-position:31px 0px;
 background-repeat:no-repeat;
 background-size:62%;
}

现在的方法把集合进行循环,然后获取当前点击的这个按钮进行比较,然后进行样式的修改

for (var i = 0; i < this.data.liuliangItems.length; i++) {
    if (e.target.dataset.orderid == this.data.liuliangItems[i].id) {
     txtArray1[i] = {
      id: this.data.liuliangItems[i].id, changeColor: true,
      price: this.data.liuliangItems[i].price, name: this.data.liuliangItems[i].name,
      one2one: this.data.liuliangItems[i].one2one
     }
    } else {
     txtArray1[i] = {
      id: this.data.liuliangItems[i].id, changeColor: false,
      price: this.data.liuliangItems[i].price, name: this.data.liuliangItems[i].name,
      one2one: this.data.liuliangItems[i].one2one
     }
    }
   }

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

Javascript 相关文章推荐
JS 页面自动加载函数(兼容多浏览器)
May 18 Javascript
基于jQuery的动态表格插件
Mar 28 Javascript
关于jquery性能最佳实践的讨论,与求教
Mar 30 Javascript
javascript中数组的sort()方法的使用介绍
Dec 18 Javascript
jQuery中ajax的使用与缓存问题的解决方法
Dec 19 Javascript
Jquery 获取指定标签的对象及属性的设置与移除
May 29 Javascript
jQuery中bind(),live(),delegate(),on()绑定事件方法实例详解
Jan 19 Javascript
纯JS实现可拖拽表单的简单实例
Sep 02 Javascript
CSS+jQuery实现简单的折叠菜单
Dec 20 Javascript
微信小程序之数据双向绑定与数据操作
May 12 Javascript
动态加载JavaScript文件的3种方式
May 05 Javascript
微信小程序websocket实现聊天功能
Mar 30 Javascript
jquery实现下拉框左右选择功能
Feb 21 #Javascript
jquery实现页面加载效果
Feb 21 #Javascript
vue2.0使用Sortable.js实现的拖拽功能示例
Feb 21 #Javascript
javascript 实现文本使用省略号替代(超出固定高度的情况)
Feb 21 #Javascript
详解JavaScript 中getElementsByName在IE中的注意事项
Feb 21 #Javascript
使用get方式提交表单在地址栏里面不显示提交信息
Feb 21 #Javascript
JavaScript中的this陷阱的最全收集并整理(没有之一)
Feb 21 #Javascript
You might like
十天学会php(3)
2006/10/09 PHP
PHP5中虚函数的实现方法分享
2011/04/20 PHP
利用php实现禁用IE和火狐的缓存问题
2012/12/03 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
2020/12/30 PHP
js innerHTML 的一些问题的解决方法
2008/06/22 Javascript
分享一个自己写的table表格排序js插件(高效简洁)
2011/10/29 Javascript
利用js读取动态网站从服务器端返回的数据
2014/02/10 Javascript
JS+CSS实现弹出全屏灰黑色透明遮罩效果的方法
2014/12/20 Javascript
JS绘制生成花瓣效果的方法
2015/08/05 Javascript
设置点击文本框或图片弹出日历控件的实现代码
2016/05/12 Javascript
jquery遍历json对象集合详解
2016/05/18 Javascript
node.js中 stream使用教程
2016/08/28 Javascript
vue.js实现刷新当前页面的方法教程
2017/07/05 Javascript
关于TypeScript中import JSON的正确姿势详解
2017/07/25 Javascript
js实现HTML中Select二级联动的实例
2018/01/05 Javascript
详解vue项目打包后通过百度的BAE发布到网上的流程
2018/03/05 Javascript
利用Blob进行文件上传的完整步骤
2018/08/02 Javascript
vue 根据数组中某一项的值进行排序的方法
2018/08/30 Javascript
layui禁用侧边导航栏点击事件的解决方法
2019/09/25 Javascript
利用python画一颗心的方法示例
2017/01/31 Python
python opencv 图像尺寸变换方法
2018/04/02 Python
Python3用tkinter和PIL实现看图工具
2018/06/21 Python
使用python将图片格式转换为ico格式的示例
2018/10/22 Python
Python子类继承父类构造函数详解
2019/02/19 Python
Python实现FM算法解析
2019/06/18 Python
在python中实现求输出1-3+5-7+9-......101的和
2020/04/02 Python
使用Keras训练好的.h5模型来测试一个实例
2020/07/06 Python
安装并免费使用Pycharm专业版(学生/教师)
2020/09/24 Python
python制作抽奖程序代码详解
2021/01/15 Python
CSS3中background-clip和background-origin的区别示例介绍
2014/03/10 HTML / CSS
美国美妆网站:B-Glowing
2016/10/12 全球购物
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
2013/03/30 面试题
作风建设年活动总结
2014/08/27 职场文书
违反单位工作制度检讨书
2014/10/25 职场文书
迎客户欢迎词三篇
2019/09/27 职场文书
Python万能模板案例之matplotlib绘制甘特图
2022/04/13 Python