Javascript 基于输入中大于零的值获取特定表行

Javascript 基于输入中大于零的值获取特定表行,javascript,jquery,Javascript,Jquery,我需要得到表中的行数,其中行中的输入值大于零。比如我有 <table> <tr><td><input type="text" value="23.4"/></td></tr> <tr><td><input type="text" value="39.5"/></td></tr> <tr><td><input type="text"

我需要得到表中的行数,其中行中的输入值大于零。比如我有

<table>
 <tr><td><input type="text" value="23.4"/></td></tr>
 <tr><td><input type="text" value="39.5"/></td></tr>
 <tr><td><input type="text" value="14.4"/></td></tr>
 <tr><td><input type="text" value="0"/></td></tr>
 <tr><td><input type="text" value="89"/></td></tr>
</table>

每发现一个大于零的值,该值都会递增。感谢大家的帮助

获取行,然后根据输入值进行过滤,无论输入值是否大于零

var numb = $('table tr').filter(function() {
    return $(this).find('input').filter(function() {
        return this.value > 0;
    }).length > 0;
}).length;
这将允许每行中有多个输入,如果任何输入的值大于零,则对该行进行计数


您需要jQuery,然后检索所有“.tr输入”,然后检查值

var res = $('tr input').filter(function(index){
   // need multiplicate by 1 to cast as number because input values are always strings
   return (this.value*1) > 0;
});
console.log('res.length : ', res.length);

这个值>0?你不需要从通常的值字符串中转换成一个数字吗?@DavidThomas-如果值是数字,则不需要转换成>和啊,我从未意识到这一点;我一直认为这会导致词典编纂。谢谢你的澄清@DavidThomas-这有点令人困惑,因为数学运算符,尤其是+会引起问题,但大于运算符和小于运算符实际上会自动转换为数字。
var res = $('tr input').filter(function(index){
   // need multiplicate by 1 to cast as number because input values are always strings
   return (this.value*1) > 0;
});
console.log('res.length : ', res.length);