一个列表点击某一个返回它的index

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script type="text/javascript">
        window.onload=function(){
            var list =document.getElementsByTagName('li');
            for(var i=0;i<list.length;i++){
                list[i].onclick = (function(n){
                    return function () {
                        console.log(n);
                    }
                })(i)
            }
        }
    </script>
</head>
<body>
<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
</ul>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 在订单列表页面,为每个订单的评价按钮添加一个点击事件: ```javascript // 点击评价按钮 onEvaluateTap: function(event) { // 获取订单 id var orderId = event.currentTarget.dataset.orderId; // 跳转到评价页面 wx.navigateTo({ url: '/pages/evaluate/evaluate?orderId=' + orderId }) } ``` 2. 在评价页面,获取订单 id 并向云数据库中添加评价记录: ```javascript // 获取订单 id var orderId = options.orderId; // 获取云数据库引用 const db = wx.cloud.database(); // 获取当前用户 openid const openid = wx.getStorageSync('openid'); // 添加评价记录 db.collection('evaluate').add({ data: { orderId: orderId, openid: openid, score: 5, // 默认评分为 5 分 comment: '', // 默认评价为空 createTime: new Date() }, success: res => { console.log('评价记录添加成功', res); }, fail: err => { console.error('评价记录添加失败', err); } }); ``` 3. 在评价页面填写评价后,返回订单列表页面并更新已评价的订单的评价按钮: ```javascript // 点击提交按钮 onSubmitTap: function() { // 获取评分和评价内容 var score = this.data.score; var comment = this.data.comment; // 更新评价记录 db.collection('evaluate').where({ orderId: orderId, openid: openid }).update({ data: { score: score, comment: comment }, success: res => { console.log('评价记录更新成功', res); // 返回订单列表页面 wx.navigateBack({ delta: 1, success: res => { // 更新已评价的订单的评价按钮 var pages = getCurrentPages(); var prevPage = pages[pages.length - 2]; prevPage.setData({ orders: this.updateEvaluateStatus(prevPage.data.orders, orderId) }); } }); }, fail: err => { console.error('评价记录更新失败', err); } }); }, // 更新已评价的订单的评价按钮 updateEvaluateStatus: function(orders, orderId) { for (var i = 0; i < orders.length; i++) { if (orders[i]._id === orderId) { orders[i].isEvaluated = true; orders[i].evaluateText = '查看评价'; break; } } return orders; } ``` 4. 在订单列表页面,根据订单是否已评价来显示不同的评价按钮: ```html <view wx:for="{{orders}}" wx:key="index"> <!-- 订单信息 --> <view>{{item.orderNo}}</view> <!-- 评价按钮 --> <button wx:if="{{!item.isEvaluated}}" data-order-id="{{item._id}}" bindtap="onEvaluateTap">评价</button> <button wx:if="{{item.isEvaluated}}" data-order-id="{{item._id}}" bindtap="onViewEvaluateTap">{{item.evaluateText}}</button> </view> ``` 以上就是小程序云开发实现已完成的订单列表点击一个订单的评价按钮跳转到评价页面,去填写评价,填写评价后返回订单列表,已评价的订单的评价按钮替换为查看评价的示例和代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值