Как я могу выбрать все входы со значением больше 0?

У меня есть набор текстовых входов с числовыми значениями:

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

Мне нужно выбрать только те входы со значениями больше 0. Как я могу это сделать с помощью jQuery? Спасибо!

Ответ 1

Что-то вроде этого, используя .filter():

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

Ответ 2

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

Ответ 3

Другим способом, для удовольствия, в основном:

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

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

Попробуйте здесь.

Примечание. Вышеуказанное работает просто отлично без parseInt.