如何选择值大于0的所有输入?

时间:2011-04-18 19:41:43

标签: jquery jquery-selectors

我有一堆带有数值的文字输入:

<input type='text' value='25' />
<input type='text' value='0' />
<input type='text' value='45' />
<input type='text' value='-2' />
.
. etc...

我只需要选择值大于0的输入。我怎样才能使用jQuery?

3 个答案:

答案 0 :(得分:19)

这样的事情,使用.filter()

$('input[type="text"]').filter(function() {
    return parseInt($(this).val(), 10) > 0;
});

答案 1 :(得分:4)

//select all text type inputs
$('input[type=text]').each(function(){
    var val = parseInt($(this).val());
    if(val > 0)
        //your logic here
});

答案 2 :(得分:2)

另一种方式,为了好玩,主要是:

// get array of values
var arr = $('input').map(function() {
    return parseInt(this.value, 10);
}).get();

// use John Resig's uberfast way of getting max value
// http://ejohn.org/blog/fast-javascript-maxmin/
alert(Math.max.apply(Math, arr));

Try it out here.

注意 - 如果没有parseInt,上述工作就可以了。