微信小程序实现星级评分和展示


Posted in Javascript onJuly 05, 2018

本文实例为大家分享了微信小程序实现星级评分和展示的具体代码,供大家参考,具体内容如下

星级评分分成两种情况: 一:展示后台给的评分数据   二:用户点击第几颗星星就显示为几星评分;

微信小程序实现星级评分和展示

直接上代码

wxml部分

<view>
 <view>一:显示后台给的评分</view>
 <block wx:for="{{one_1}}" wx:key="item">
 <image src='../../image/star.png'></image>
 </block>
 <block wx:for="{{two_1}}" wx:key="item">
 <image src='../../image/starg.png'></image>
 </block>
</view>
<view>这里num给的是几分就显示几颗星星</view>
 
<view style='margin-top:60px;'>二:显示用户选择的评分</view>
<block wx:for="{{one_2}}" wx:key="index">
 <image catchtap='in_xin' id='{{index+1}}' data-in='star' src='../../image/star.png'></image>
</block>
<block wx:for="{{two_2}}" wx:key="index">
 <image catchtap='in_xin' id='{{index+1}}' data-in='starg' src='../../image/starg.png'></image>
</block>
<view>{{one_2}}星</view>

wxss部分

image{ 
 height: 60rpx; 
 width: 60rpx; 
 display: inline-block 
}

js部分

/**
 * 页面的初始数据
 * 满分为5星
 */
 data: {
 num: 4,//后端给的分数,显示的星星
 one_1: '',//点亮的星星数
 two_1: '',//没有点亮的星星数
 one_2: 0,//点亮的星星数
 two_2: 5//没有点亮的星星数
 },
 
 /**
 * 生命周期函数--监听页面加载
 */
 onLoad: function (options) {
 //情况一:展示后台给的评分 
 this.setData({
 one_1: this.data.num,
 two_1: 5 - this.data.num
 })
 },
 in_xin: function (e) {
 var in_xin = e.currentTarget.dataset.in;
 console.log(e.currentTarget.dataset.in);
 console.log(e.currentTarget); 
 var one_2;
 if (in_xin == 'star') {
 one_2 = Number(e.currentTarget.id)
 } else {
 one_2 = Number(e.currentTarget.id) + this.data.one_2
 }
 this.setData({
 one_2: one_2,
 two_2: 5 - one_2
 })
 },

starg是灰色的星星,star是点亮的星星。if判断那里:如果点击的是点亮的星星的话,点亮星星的个数就是点的这个ID。如果点的是灰色星星的话,点亮星星的个数就是点的这个ID加上已点的个数。而ID就是星星的个数。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery 基础学习笔记之文档处理
May 29 Javascript
javascript分页代码(当前页码居中)
Sep 20 Javascript
js同比例缩放图片的小例子
Oct 30 Javascript
javascript实现根据iphone屏幕方向调用不同样式表的方法
Jul 13 Javascript
JavaScript实现自动消除按钮功能的方法
Aug 05 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
Feb 12 Javascript
js导出excel文件的简洁方法(推荐)
Nov 02 Javascript
jquery获取input type=text中的值的各种方式(总结)
Dec 02 Javascript
浅析Vue自定义组件的v-model
Nov 26 Javascript
element-ui 文件上传修改文件名的方法示例
Nov 05 Javascript
ant design实现圈选功能
Dec 17 Javascript
vue-router定义元信息meta操作
Dec 07 Vue.js
vue-router history模式下的微信分享小结
Jul 05 #Javascript
微信小程序实现运动步数排行功能(可删除)
Jul 05 #Javascript
微信小程序之批量上传并压缩图片的实例代码
Jul 05 #Javascript
JavaScript控制浏览器全屏显示简单示例
Jul 05 #Javascript
基于jQuery使用Ajax动态执行模糊查询功能
Jul 05 #jQuery
JavaScript递归函数解“汉诺塔”算法代码解析
Jul 05 #Javascript
微信小程序开发之改变data中数组或对象的某一属性值
Jul 05 #Javascript
You might like
php adodb操作mysql数据库
2009/03/19 PHP
php array的学习笔记
2012/05/16 PHP
前端必学之PHP语法基础
2016/01/01 PHP
yii2带搜索功能的下拉框实例详解
2016/05/12 PHP
有关PHP 中 config.m4 的探索
2020/08/26 PHP
TNC vs RR BO3 第一场 2.14
2021/03/10 DOTA
使用Javascript和DOM Interfaces来处理HTML
2006/10/09 Javascript
js 浮动层菜单收藏
2009/01/16 Javascript
Javascript 兼容firefox的一些问题
2009/05/21 Javascript
extjs 为某个事件设置拦截器
2010/01/15 Javascript
Draggable Elements 元素拖拽功能实现代码
2011/03/30 Javascript
jQuery回调函数的定义及用法实例
2014/12/23 Javascript
JavaScript操作Cookie详解
2015/02/28 Javascript
14 个折磨人的 JavaScript 面试题
2016/08/08 Javascript
Vue 组件传值几种常用方法【总结】
2018/05/28 Javascript
在layui中select更改后生效的方法
2019/09/05 Javascript
vue实例的选项总结
2020/06/09 Javascript
python 图片验证码代码分享
2012/07/04 Python
python实现百度关键词排名查询
2014/03/30 Python
全面理解Python中self的用法
2016/06/04 Python
Python爬虫工程师面试问题总结
2018/03/22 Python
pygame游戏之旅 计算游戏中躲过的障碍数量
2018/11/20 Python
python 求某条线上特定x值或y值的点坐标方法
2019/07/09 Python
python3使用GUI统计代码量
2019/09/18 Python
python如何通过twisted搭建socket服务
2020/02/03 Python
Python实现代码块儿折叠
2020/04/15 Python
python-地图可视化组件folium的操作
2020/12/14 Python
HTML5 audio标签使用js进行播放控制实例
2015/04/24 HTML / CSS
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
经典c++面试题二
2015/08/14 面试题
中级会计职业生涯规划书
2014/03/01 职场文书
《悯农》教学反思
2014/04/28 职场文书
小学生作文批改评语
2014/12/25 职场文书
消防安全月活动总结
2015/05/08 职场文书
2016年清明节寄语
2015/12/04 职场文书
初中体育课教学反思
2016/02/16 职场文书