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);
}
});