【发布时间】:2021-07-31 20:49:15
【问题描述】:
<select class="form-control js-example-basic-single getDress" name="dress[]" id="dress"
style="width: 50%;">
<option></option>
</select>
<input type="text" class="form-control" id="amount" name="amount[]" style="width: 40%;"
placeholder="How many?">
<button type="button" class="btn btn-secondary" id="add-more"><i
class="fa fa-plus"></i></button>
</div
上面是html
let dress = document.getElementsByName('dress[]');
let amount = document.getElementsByName('amount[]');
let a, b, i;
for ( i = 0; i < dress.length && amount.length; i++) {
a = dress[i];
b = amount[i];
let Dresses = [];
Dresses[i] = [a.value, b.value];
console.log(Dresses[i]);
let k, n = Dresses.length;
console.log(Dresses.length);
let tmp = [];
for (k = 0; k < n; k++) {
tmp[k] = new DressDetails(Dresses[k][0], Dresses[k][1]);
console.log(tmp[k]);
}
let objJSON = JSON.stringify(tmp);
console.log(objJSON);
有没有办法将 JSON 响应组合在一起?因为我正在单独收到回复。
它给我的回复是[{"dressType":"T-Shirt","dressAmount":"2"}]。仅适用于 1 个输入。但是如果有多个输入,它会显示这个错误“Uncaught TypeError: Cannot read property '0' of undefined”。
【问题讨论】:
-
您希望
i < dress.length && amount.length做什么?你的意思是i < dress.length && i < amount.length? -
@SebastianSimon。是的,这就是我的意思。但似乎你的更符合逻辑。
-
语义不同。
i < dress.length && amount.length表示 “i小于dress的length并且amount的length不是0”。 -
@SebastianSimon。请进一步解释。
-
请提供清晰的代码。
标签: javascript jquery json