繁体   English   中英

javascript 数组,键包含另一个使用 php 的对象数组

[英]javascript array with keys containing another array of objects using php

我正在做一个电子商务项目。 用户可以选择多种颜色,并可以为该颜色的每种尺寸输入不同的数量。 我想将该数据存储到一个数组中,然后使用 ajax 将其发送到服务器

数组应该是这样的

[ {
   'color' : [ {
        'INDIGO' : [
                     { 'S' : 15},
                     { 'M' : 15},
        ] },{
        'PURPLE' : [
                     { 'S' : 15},
                     { 'M' : 15},
        ]},

   ]}
]

但我得到了这种类型的数组。 它正在插入我插入的最后一个数量替换旧的,就像紫色一样,如果我为 s 输入 15,为 m 输入 15 只需要 m

靛蓝:{L:15} 紫色:{M:15}

这是我的代码示例

当用户选择颜色单选时,它会将值推送到颜色数组中

var key = 'INDIGO';
color[key] = {};

当用户增加数量时,它会插入颜色键的对象

var len = $('.radioCheckbox:checked');

for (var i = 0; i < len.length; i++) {
    var key = len[i].value;
    color[key] = {
        [$size] : val,
    };
}

看起来当您将 15 用于 s 并将 15 用于 m 时,您的颜色没有为每个尺寸正确设置。 因此,当您按下 m 或 s 时,请检查颜色设置是否正确。 或者,不确定为什么需要复杂的数据结构。 我认为可以使用易于处理的数据结构来实现,例如

data = {
  'color': {
    'INDIGO': {
      'S': 15,
      'M': 15
    },
    'PURPLE': {
      'S': 15,
      'M': 15
    }
  }
}

您可以管理颜色、大小及其值,例如,

data['color'][key][$size] = val

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM