我想知道如何编写一个jQuery语句来获取匹配元素的属性的最大值.
在LINQ中我们这样说:
var maxHeight = list.Max(a=> a.Height);
在jquery中最好的方法是什么?
例如,我们想要选择容器中所有:文本元素的最大数值:
var allInputs = $("#container :text"); // how to get the max of parseInt(item.val())?
当然有一个循环遍历所有元素是一个选择,但我很好奇,知道是否有一个魔术与jquery.
问候.
解决方法
可能的解决方案之一是使用map函数,然后使用Math.max结果:
var values = $.map($("input:text"),function(el,index) { return parseInt($(el).val()); }); var max = Math.max.apply(null,values);
如果需要它可能会写成一行.
小提琴:http://jsfiddle.net/WuVLr/1/
更新:
或者,您可以以这种方式应用地图:
var values = $("input:text").map(function(index,el) { return parseInt($(el).val()); }).get();