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


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 相关文章推荐
JavaScipt基本教程之JavaScript语言的基础
Jan 16 Javascript
Jquery Ajax.ashx 高效分页实现代码
Oct 20 Javascript
简单实用的反馈表单无刷新提交带验证
Nov 15 Javascript
浮动的div自适应居中显示的js代码
Dec 23 Javascript
jquery 插件实现多行文本框[textarea]自动高度
Mar 04 Javascript
jQuery Validation Engine验证控件调用外部函数验证的方法
Jan 18 Javascript
bootstrap table表格客户端分页实例
Aug 07 Javascript
详解Vue的computed(计算属性)使用实例之TodoList
Aug 07 Javascript
jQuery中extend函数简单用法示例
Oct 11 jQuery
微信小程序使用video组件播放视频功能示例【附源码下载】
Dec 08 Javascript
浅谈微信小程序之官方UI框架we-ui使用教程
Aug 20 Javascript
vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)
Nov 05 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
DISCUZ在win2003环境下 Unable to access ./include/common.inc.php in... 的问题终极解决方案
2011/11/21 PHP
php实现执行某一操作时弹出确认、取消对话框
2013/12/30 PHP
php+flash+jQuery多图片上传源码分享
2020/07/27 PHP
PHP实现的字符串匹配算法示例【sunday算法】
2017/12/19 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
2019/04/30 PHP
jQuery UI的Dialog无法提交问题的解决方法
2011/01/11 Javascript
JS TextArea字符串长度限制代码集合
2012/10/31 Javascript
获取offsetTop和offsetLeft值的js代码(兼容)
2013/04/16 Javascript
3个可以改善用户体验的AngularJS指令介绍
2015/06/18 Javascript
JavaScript实现水平进度条拖拽效果
2017/01/18 Javascript
Three.js利用顶点绘制立方体的方法详解
2017/09/27 Javascript
JS实现基于拖拽改变物体大小的方法
2018/01/23 Javascript
AngularJS select加载数据选中默认值的方法
2018/02/28 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
JavaScript Reflect Metadata实现详解
2019/12/12 Javascript
如何基于js判断浏览器版本
2020/02/20 Javascript
javascript使用Blob对象实现的下载文件操作示例
2020/04/18 Javascript
JS实现多选框的操作
2020/06/24 Javascript
解决antd datepicker 获取时间默认少8个小时的问题
2020/10/29 Javascript
微信小程序 接入腾讯地图的两种写法
2021/01/12 Javascript
[18:20]DOTA2 HEROS教学视频教你分分钟做大人-昆卡
2014/06/11 DOTA
Python打印斐波拉契数列实例
2015/07/07 Python
解决Python传递中文参数的问题
2015/08/04 Python
Python中数字以及算数运算符的相关使用
2015/10/12 Python
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
python实现扫描局域网指定网段ip的方法
2019/04/16 Python
Python3.5 Pandas模块之DataFrame用法实例分析
2019/04/23 Python
python实现图片横向和纵向拼接
2020/03/05 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
2020/06/02 Python
Python如何急速下载第三方库详解
2020/11/02 Python
css3 按钮样式简单可扩展创建
2013/03/18 HTML / CSS
Pretty Little Thing美国:时尚女性服饰
2018/08/27 全球购物
电子商务专员岗位职责
2013/12/11 职场文书
2014教师个人自我评价范文
2014/09/13 职场文书
2015年“七七卢沟桥事变”纪念活动总结
2015/03/24 职场文书
主持稿开场白
2015/06/01 职场文书