0
名前と数量の2つの値を持つペイロードを作成しようとしています。各数量は名前に関連付けられています。私がしようとしているのは、数量がゼロの場合、名前と数量を持つオブジェクトがペイロードに追加されないということです。オブジェクトのキーがゼロの場合はオブジェクトを削除します
var myQuantity = $('input[name="quantity[]"]').map(function() {return $(this).val();}).get();
var myName = $('[name="name[]"]').map(function(){return $(this).text();}).get();
var len = myQuantity.length;
var data = []
for (var x = 0; x < len; x++){
var element = {
"name" : myName[x],
"quantity" : myQuantity[x] \t
}
data.push(element);
}
console.log(data);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span name="name[]" class="name">1</span><input type="text" name="quantity[]" class="quantity" value="1"><br>
<span name="name[]" class="name">2</span><input type="text" name="quantity[]" class="quantity" value="0"><br>
<span name="name[]" class="name">3</span><input type="text" name="quantity[]" class="quantity" value="5"><br>
if> 0でdata.pushをラップしてみます。 – xkcd149