• js变量污染引起的诡异bug


    js方法是这样的:

     //保存提货券JSON数据到隐藏字段
            saveVoucherListInfoToHiddenFiled: function () {
                //保存绑定商品信息
                var voucherLines = $("#tbVouchersBindCommodityList .cClz");
                var voucherModels = [];
                for (var i = 0; i < voucherLines.length; i++) {
                    var $voucher = $(voucherLines[i]);
                    var model = $voucher.data("voucher");
                    model.BindCommodities = $voucher.data("bindcommodities");
                    ////设置提货券的类型
                    //model.BindType = model.BindCommodities.length ? model.BindCommodities[0].BindType : "COMMODITY";
    
                    voucherModels.push(model);
                }
                $("#" + addVoucherModule.data.voucherListID).val(JSON.stringify(voucherModels));
    
                //绑定促销信息
                var voucherPromotionLines = $("#tbVouchersBindCommodityList .pClz");
                var voucherPromotionModels = [];
                for (var i = 0; i < voucherPromotionLines.length; i++) {
                    var $voucherPromotion = $(voucherPromotionLines[i]);
                    var modelPromotion = $voucherPromotion.data("voucher");
                    modelPromotion.BindCommodities = $voucherPromotion.data("bindcommodities");
                    voucherPromotionModels.push(modelPromotion);
                }
                $("#" + addVoucherModule.data.voucherPromotionListID).val(JSON.stringify(voucherPromotionModels));
            },
    

      结果在

     var modelPromotion = $voucherPromotion.data("voucher");取到的值总是有一条与上一条一样的记录,最后将第二个i改成j才完事儿。。。。回头好好总结下
  • 相关阅读:
    TP5.1 分页CSS样式(转载)
    简单的layui二级联动
    关于layui部分表单不显示的问题(Select, checkBox)
    MySQL 开启远程访问权限 | 宝塔系统
    tp5.1 本地正常, 线上route.php不起作用的问题
    cocos自动图集
    微信小程序video
    nuxt https
    接口数据加密
    node里读取命令行参数
  • 原文地址:https://www.cnblogs.com/skybreak/p/6283777.html
Copyright © 2020-2023  润新知