小程序循环列表删除问题

本文介绍了一个小程序的需求实现,即在循环列表中点击解绑按钮删除当前项,同时点击试驾按钮时更新左侧图标的颜色。代码片段展示了wxml和js的实现细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:点击解绑按钮的时候,会删除当前所点击的列表.
点击试驾按钮的时候,左侧的图标会变成按钮一样的颜色。

代码片段:
删除和试驾的方法

wxml:

<view class="inner del">
          <span class="draw" data-index="{{index}}" data-name="{{item.carNum}}" bindtap="tryDriver" >试驾</span>
          <span class="delete" data-name="{{item.carNum}}" bindtap="unBind">解绑</span>
 </view>

js:

 //点击删除
  unBind: function(e) {
    var that = this;
    console.log(e.currentTarget.dataset.name)
    //获取列表中要删除项的下标
    wx.showModal({
      title: '提示',
      content: '是否确认解绑',
      success(res) {
        if (res.confirm) {
          //解绑
          wx.request({
            url: app.globalData.root +"car/unBind.do",
            data: {
              "openid": app.globalData.openid,
              "carNum": e.currentTarget.dataset.name
            },
            method: 'GET',
            header: {
              'Content-type': 'application/json'
            },
            success: function(res) {
              that.getCars(app.globalData.openid);
            }
          });
        }
      }
    })

  },
  //点击试驾
  tryDriver: function(e) {
    var that = this;
    var index = e.currentTarget.dataset.index;
    var list = that.data.carList;
    if (list[index].state == 5)
      return;

    wx.showModal({
      title: '提示',
      content: '是否确认试驾',
      success(res) {
        if (res.confirm) {
          //试驾
          wx.request({
            url: app.globalData.root +"car/driver.do",
            data: {
              "openid": app.globalData.openid,
              "carNum": e.currentTarget.dataset.name
            },
            method: 'GET',
            header: {
              'Content-type': 'application/json'
            },
            success: function(res) {
              if(res.data == 0){
                wx.showToast({
                  title: '车辆维修尚未结束、不可试驾',
                  icon: 'none',
                })
                return;
              }
              //切换图标
              for (var ix in list) {
                if (ix == index)
                  list[ix].state = 5;
              }
              //更新列表的状态
              that.setData({ 
                carList: list
              });
            }
          });
        }
      }
    })
  },

原文作者:祈澈姑娘 技术博客:https://www.jianshu.com/u/05f416aefbe1
90后前端妹子,爱编程,爱运营,爱折腾。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值