目前的情况是,无论加入多少个商品到购物车后,我们进入购物车,默认是所有商品都是没有勾选的
用户需要重新打钩,才能进入下一步结算。
我想,按照正常网购经验,不应该给用户设置麻烦。所以我建议改为自动全选,方便用户一步进入结算。
以下是我修改后的代码:
pages/order_addcart/order_addcart.js
第一处修改:更改了标红的位置
data: {
parameter: {
'navbar': '1',
'return': '0',
'title': '购物车',
'color': false
},
navH: [color=#9885a]0,[/color]
cartCount:[color=#9885a]0, [/color]
goodsHidden:true,
footerswitch: true,
host_product: [],
cartList:[],
isAllSelect: true,//全选
selectValue: [],//选中的数据
selectCountPrice: [color=#9885a]0.00,[/color]
},
第二处修改:找到getCartList函数,添加了标红的位置
getCartList: function () {
var that = this;
app.baseGet(app.U({ c: 'auth_api', a: "get_cart_list"}), function (res) {
var cartList = res.data;
var valid = cartList.valid;
var numSub = [{ numSub: true }, { numSub: false} ];
var numAdd = [{ numAdd: true }, { numAdd: false} ];
if (valid.length > 0){
for (var index in valid){
if (valid.cart_num == 1) { valid.numSub = true;}
else { valid.numSub = false; }
var productInfo = valid.productInfo;
if (productInfo.hasOwnProperty('attrInfo') && valid.cart_num == valid.productInfo.attrInfo.stock) {
valid.numAdd = true;;
} else if (valid.cart_num == valid.productInfo.stock) {
valid.numAdd = true;;
} else { valid.numAdd = false; }
valid.checked = false;
}
}
that.setData({ cartList: cartList });
that.switchSelect();
that.setAllSelectValue(1); //添加了这行代码!!!!
});
},
第三处:依然是标红的位置。
onShow: function () {
if (app.globalData.isLog == true) {
this.getHostProduct();
this.getCartList();
this.getCartNum();
this.setData({
goodsHidden: true,
footerswitch: true,
host_product: [],
cartList: [],
isAllSelect: true,//全选
selectValue: [],//选中的数据
selectCountPrice: 0.00,
cartCount: 0,
});
}
},
{{item.user_info.nickname ? item.user_info.nickname : item.user_name}}
作者 管理员 企业
{{itemf.name}}
{{itemc.user_info.nickname}}
{{itemc.user_name}}
回复 {{itemc.comment_user_info.nickname}}
{{itemf.name}}