我有一个带数值的下拉列表:
<select name="a">
<option value="1">asdsadas</option>
<option value="1">wqecsdc</option>
<option value="10">nmnmbn</option>
<option value="16">assadsa</option>
<option value="12">uuyuyuy</option>
<option value="60">xzXz</option>
<option value="55">vbbnbnm</option>
<option value="13">eerrt</option>
</select>
我需要在此列表中找到最高数值。 (在这种情况下,它是60。)
我在考虑使用.each
进行循环,但是有更短的方法吗?
答案 0 :(得分:15)
这对我很好,很直接:
$('select option:last').val()
编辑:误解了这个问题,但可能对其他人有用,在大多数情况下,你可以在select元素中选择desc或asc。
答案 1 :(得分:9)
这样的事情应该有效:
function findMaxValue(element) {
var maxValue = undefined;
$('option', element).each(function() {
var val = $(this).attr('value');
val = parseInt(val, 10);
if (maxValue === undefined || maxValue < val) {
maxValue = val;
}
});
return maxValue;
}
alert(findMaxValue($('select[name=a]')));
答案 2 :(得分:0)
var temp=0;
var currentValue, maxValue;
$('select option').each(function(){
currentValue = $(this).val();
maxValue = Math.max(temp, currentValue);
temp=currentValue;
});
console.log(maxValue);
答案 3 :(得分:0)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="aktivite_type" id="aktivite_type">
<option value="1">A</option>
<option value="6">B</option>
<option value="10">C</option>
<option value="11">D</option>
<option value="8">E</option>
<option value="9">F</option>
<option value="7">F</option>
</select>
<button onclick="JSF__selectLastTypeValue()">Select Value</button>
<script>
function JSF__selectLastTypeValue()
{
var temp=0;
var currentValue, maxValue;
$('#aktivite_type option').each(function(i,v)
{
currentValue = v.value;
maxValue = Math.max(temp, currentValue);
temp=maxValue;
});
$("#aktivite_type").val(maxValue);
}
</script>
&#13;
答案 4 :(得分:-1)
var maxValue = undefined;
$('option', element).each(function() {
var val = $(this).val();
val = parseInt(val, 10);
if(!isNaN(val)) {
if (maxValue === undefined || maxValue < val) {
maxValue = val;
}
}
});
return maxValue;