如何在javascript中获得最高输入字段值

时间:2015-06-09 04:29:39

标签: javascript html

我想获得这个领域的最高价值。我怎么能这样做?

 <input type="text" style="width:20%;" class="input-text" name="position[]" value="20" />
 <input type="text" style="width:20%;" class="input-text" name="position[]" value="25" />
 <input type="text" style="width:20%;" class="input-text" name="position[]" value="10" />
 <input type="text" style="width:20%;" class="input-text" name="position[]" value="5" />
 <input type="text" style="width:20%;" class="input-text" name="position[]" value="30" />

5 个答案:

答案 0 :(得分:2)

其他人可能会使用vanilla解决方案,但如果您使用jQuery,则可以这样做

Array.max = function(array) {
    return Math.max.apply(Math, array);
};

var max = Array.max($('.input-text').map(function() {
    return $(this).val();
}));

console.log(max) // 30

JSFiddle Link

答案 1 :(得分:1)

使用jQuery each获取最高输入值。 Demo

var inputValue = -Infinity;
$("input:text").each(function() {
    inputValue = Math.max(inputValue, parseFloat(this.value));
});
alert(inputValue);

答案 2 :(得分:1)

试试这个

HTML:

<form name="myForm">
  <input type="text" style="width:20%;" class="input-text" name="position[]" value="20" />
  <input type="text" style="width:20%;" class="input-text" name="position[]" value="25" />
  <input type="text" style="width:20%;" class="input-text" name="position[]" value="10" />
  <input type="text" style="width:20%;" class="input-text" name="position[]" value="5" />
  <input type="text" style="width:20%;" class="input-text" name="position[]" value="30" />
</form>

Javascript:

var myForm = document.forms.myForm;
var myControls = myForm.elements['position[]'];
var max = -Infinity;
for (var i = 0; i < myControls.length; i++) {
    if( max<parseInt(myControls[i]))
      max=parseInt(myControls[i]);
}
console.log(max);

答案 3 :(得分:1)

var maxVal = 0;
$('input[name="position[]"]').each(function(){
    maxVal = Math.max(maxVal , parseInt($(this).val()));
});
alert(maxVal);

答案 4 :(得分:1)

纯javascript:

var inputs = document.querySelectorAll('input[name="position[]"]');
var max =0;
for (var i = 0; i < inputs.length; ++i) {
   max =  Math.max(max , parseInt(inputs[i].value));
}