购物车提交订单时,怎样将多个商品id存在一起?

发布于 2022-09-13 01:25:13 字数 3139 浏览 15 评论 0

如图所示,在选择多个商品时,将商品id给后端传成64,63,62的效果


我现在只能在点击时获取到商品的id,怎样才能把它拼成64,63,62的效果?求指点,谢谢!

购物车代码:

<div class="main_box" v-show="msg === 4">
          <p class="main_box_title">购物车</p>
          <div class="cart">
            <input
              type="checkbox"
              class="cart_box"
              @click="selectedAll()"
              v-model="allChecked"
            />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <span class="cart_all">全选</span>
            <p class="cart_money">
              已选商品合计&nbsp;&nbsp;&nbsp;&nbsp;<span
                style="color: #ffa52b; font-weight: bold"
                >{{ orderMoney }}</span
              >&nbsp;&nbsp;&nbsp;&nbsp;元
            </p>
            <p class="cart_settlement" @click="settlement()">结算</p>
          </div>
          <div class="cart_main">
            <ul class="cart_main_title">
              <li>序号</li>
              <li>商品信息</li>
              <li>价格</li>
              <li>数量</li>
              <li>总价</li>
              <li>操作</li>
            </ul>
            <ul class="main_table" v-for="(item, index1) in cartInformation" :key="index1">
              <li>
                <!-- 商品选中 -->
                <input
                  type="checkbox"
                  name=""
                  :checked="item.checked"
                  @click="changCheck($event,index1,item.id)"
                  class="cart_box"
                />&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;
                {{ index1 + 1 }}
              </li>
              <li>
                {{ item.goodsName | aa }}
                <img :src="item.goodsPicture" alt="" />
              </li>
              <li>{{ item.price }}</li>
              <li>
                <span @click="addNum(item.id)">+</span>&nbsp;&nbsp;&nbsp;{{
                  item.num
                }}&nbsp;&nbsp;&nbsp;<span @click="reduceNum(item.id)">-</span>
              </li>
              <li>
                {{item.total}}
              </li>
              <li>
                <p @click="deleteCart(item.id)" >删除</p>
              </li>
            </ul>
          </div>
          <input type="checkbox" name="" id="" class="cart_box1" />
</div>

商品选中时的代码:

//商品选中
    changCheck(e,index1,id){
      this.id=id;
      console.log(this.id);
      let checked=e.target.checked;
      let cartInformation=this.cartInformation;
      cartInformation[index1].checked=checked;
      this.allChecked=cartInformation.length?cartInformation.every(v=>v.checked):false;
      //计算金额
      this.computePN();

},

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

轻许诺言 2022-09-20 01:25:13
var a = [{id: 1, checked: false}, {id: 2, checked: true}, {id: 3, checked: true}]
a = a.filter(v=>v.checked).reduce((val, next) => {
    val.push(next.id)
    return val
}, []).join(',')
console.log(a)

2,3

给我一枪 2022-09-20 01:25:13
// 你的商品数组
// checked 是你复选框的所绑定的值
let a = [
    {id: 1, checked: false},
    {id: 2, checked: true},
    {id: 3, checked: true}
]

过滤得到哪些勾选,使用map获取到id
a.filter(f => f.checked).map(m => m.id)

输出为:[2, 3]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文