在具有相同标签的所有输入中设置值数组 class

set value array in all inputs with same tag class

我正在尝试循环遍历具有相同 className 的所有标签并获取它们的值:

var quantity = [];
$(".add_more_items").each(function(){
    quantity.push($(this).val());
});

这是一个结果,例如:

['1', '9', '1']

但我的问题是我试图将此数组的值设置为具有相同 class:

的其他输入
$.each(quantity, function(index, val){
    $(".items_final").val(val);
});

但总是在所有输入中设置我数组中的最后一个值,我不知道我做错了什么。

假设字段之间存在 1 对 1 映射,使用索引

const $final = $(".items_final");
$(".add_more_items").each(function(i, item) {
  $final[i].value = item.value; // or $final.eq(i).val(item.value)
});

const $final = $(".items_final");
$(".add_more_items").each(function(i, item) {
  $final[i].value = item.value; // or $final.eq(i).val(item.value)
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h3>Add more</h3>
<input type="text" value="1" class="add_more_items" />
<input type="text" value="2" class="add_more_items" />
<input type="text" value="3" class="add_more_items" />
<input type="text" value="4" class="add_more_items" />
<hr/>
<h3>final</h3>
<input type="text" value="" class="items_final" />
<input type="text" value="" class="items_final" />
<input type="text" value="" class="items_final" />
<input type="text" value="" class="items_final" />

这也很有用:

const quantity = $(".add_more_items").map(function(){
  return this.value; // or $(this).val()
}).get();