Javascript jQuery:循环仅打印一个值
我有下面的代码Javascript jQuery:循环仅打印一个值,javascript,jquery,foreach,Javascript,Jquery,Foreach,我有下面的代码 <script src="https://code.jquery.com/jquery-3.2.0.min.js"></script> <table id="main_table"> <tr> <td><input name="" value="3" id="id_3" checked="checked" type="checkbox"></td> <
<script src="https://code.jquery.com/jquery-3.2.0.min.js"></script>
<table id="main_table">
<tr>
<td><input name="" value="3" id="id_3" checked="checked" type="checkbox"></td>
<td><input name="qty[]" value="5.0000" type="text"></td>
</tr>
<tr>
<td><input name="" value="4" id="id_4" checked="checked" type="checkbox"></td>
<td><input name="qty[]" value="2.0000" type="text"></td>
</tr>
<tr>
<td><input name="" value="5" id="id_5" checked="checked" type="checkbox"></td>
<td><input name="qty[]" value="3.0000" type="text"></td>
</tr>
</table>
<script>
jQuery('table#main_table').each( function(){
if(jQuery(this).find("input:checkbox").is(':checked')){
var txt = jQuery(this).find("input[name='qty[]']").val();
alert(txt);
}
});
jQuery('table#main_table')。每个(函数(){
if(jQuery(this).find(“输入:复选框”).is(':checked')){
var txt=jQuery(this.find)(“输入[name='qty[]']”)val();
警报(txt);
}
});
我需要检查表内是否选中复选框,然后打印其数量值。但下面的代码只打印1个值。而不是全部
我缺少什么?您正在
上使用每个,它将只迭代一次,因为只有一个表具有该ID。迭代表中的
元素
$('#main_table tr').each(function() {
...
jQuery('table#main_table tr')。每个(函数(){
if(jQuery(this).find(“输入:复选框”).is(':checked')){
var txt=jQuery(this.find)(“输入[name='qty[]']”)val();
console.log(txt);
}
});代码>
您的循环是针对tr的,而不是针对表的
jQuery('table#main_table tr')。每个(函数(){
if(jQuery(this).find(“输入:复选框”).is(':checked')){
var txt=jQuery(this.find)(“输入[name='qty[]']”)val();
console.log(txt);
}
});代码>