我动态创建了多行:
<tr class="row">
<td class="row-checkbox-delete-row"><input tabindex="-1" class="checkbox-delete-row" type="checkbox" /></td>
<td class="row-target">10</td>
<td class="row-product-id"><input class="id-target row-product-id" name="lineItem[0].originalInput" type="text" data-ajax-line-id="1" /></td>
<td class="row-qty"><input class="qty-target row-qty" name="lineItem[0].quantity" type="text" value="1" /></td>
<td class="row-description"></td>
<td class="row-abc6"></td>
<td class="row-abc8"><input readonly tabindex="-1" class="abc8-target row-abc8" name="lineItem[0].abc8" type="text" /></td>
<td class="row-upc"></td>
<td class="row-ndc"></td>
</tr>
我想遍历所有这些并获取每个属性 data-ajax-line-id
。
我有这段代码,但它不起作用。需要一些帮助。
var lineids = new Array();
$(".checkbox-delete-row:checked").each(function() {
lineids.push($(this).parents("td").siblings(".row-product-id").children(".id-target").attr("data-ajax-line-id"));
});
最佳答案
然后遍历行,检查该行中是否选中了 .checkbox-delete-row
,如果是,则从该行获取 data 属性并将其添加到数组中,如果不只是返回 null :
var arr = $.map($('.row'), function(el) {
return $('.checkbox-delete-row', el).is(':checked') ?
$('[data-ajax-line-id]', el).data('ajax-line-id') :
null;
});
关于javascript - 尝试仅针对选中的行通过基于 $(this) 元素和 jQuery 的元素进行迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20154898/