Javascript 获取具有最高数值的输入元素的输入id

Javascript 获取具有最高数值的输入元素的输入id,javascript,jquery,Javascript,Jquery,我有几个带有类名分数的输入字段,它们的ID是随机的,可以肯定的是,输入字段是动态的,但具有相同的类名 <input type="text" class="scores" id="1dhs3d" value="50"> <input type="text" class="scores" id="ae34bd" value="100

我有几个带有类名分数的输入字段,它们的ID是随机的,可以肯定的是,输入字段是动态的,但具有相同的类名

<input type="text" class="scores" id="1dhs3d" value="50">

<input type="text" class="scores" id="ae34bd" value="100">

<input type="text" class="scores" id="6ydbbd" value="15">


这样,只能获得最高值,但我需要知道具有该最高值的元素的id。

这里有一个使用数组对象排序的选项:

让分数=数组。从$分数开始; 让sortedElements=scores.sorta,b=>parseInt$b.val-parseInt$a.val; 设$max=$sortedElements[0]; 得分最高的console.logElement id:+$max.attr'id';
下面是一个使用数组对象排序的选项:

让分数=数组。从$分数开始; 让sortedElements=scores.sorta,b=>parseInt$b.val-parseInt$a.val; 设$max=$sortedElements[0]; 得分最高的console.logElement id:+$max.attr'id';
我知道您已经得到了答案,但我已经用JavaScript完成了这项工作,以了解是否有多个字段具有相同的最高值

让elements=document.getElementsByClassName'scores'; 元素=[…元素]; 控制台。日志…元素 设max=Math.max.applyMath,elements.mape=>Numbere.value console.logmax 让allMaxIds=elements.filtere=>{ 返回max==Numbere.value; }.mape=>{return{id:e.id,score:Numbere.value}; console.logallMaxIds
我知道您已经得到了答案,但我已经用JavaScript完成了这项工作,以了解是否有多个字段具有相同的最高值

让elements=document.getElementsByClassName'scores'; 元素=[…元素]; 控制台。日志…元素 设max=Math.max.applyMath,elements.mape=>Numbere.value console.logmax 让allMaxIds=elements.filtere=>{ 返回max==Numbere.value; }.mape=>{return{id:e.id,score:Numbere.value}; console.logallMaxIds
如果您有多个具有相同最大分数的输入,您希望发生什么?如果这个问题与@andrei040191不相同,那么这非常接近:谢谢。成功了。但奇怪的是,如果两个元素具有相同的最高值,这是否会起作用value@DBS如果可能的话,我应该能够循环通过它们。e多个相同的最高值。我将检查@Jean,如果您有多个输入具有相同的最大分数,您希望发生什么?如果这个问题与@andrei040191不相同,那么这非常接近:谢谢。成功了。但奇怪的是,如果两个元素具有相同的最高值,这是否会起作用value@DBS如果可能的话,我应该能够循环通过它们。e多个相同的最高值。我将检查@JeanIt是否工作正常。“谢谢你,伙计。”再次欢迎你,我把它简化了一点,减少了排序和循环。谢谢你,伙计。对我很好,它工作得很好。“谢谢你,伙计。”再次欢迎你,我把它简化了一点,减少了排序和循环。谢谢你,伙计。对我有好处
var max_=[];
$('.scores').each(function(){ max_.push( $(this).val() ); });

var max = Math.max.apply(Math, max_);