0

I have a table that looks similar to the following

<table id="mytable">
    <tr><td>1</td><td>Data here</td></tr>
    <tr><td>3</td><td>Data here</td></tr>
    <tr><td>2</td><td>Data here</td></tr>
</table>

How do I use jquery to retrieve the number 3 since it is the highest of the 3 rows? I cannot use last or first since it is not guaranteed that the rows will be ordered.

4

4 に答える 4

4

次のようなものを試してください。

var max = Math.max.apply(Math, $('td:first-child').map(function(i,elem){ 
    return Number($(elem).text()); 
}));

ライブデモ

于 2012-07-12T16:59:20.793 に答える
2
var max = 0;
$('#mytable tr').find('td:first').each(function(){
    max = Math.max($(this).html(),max);
});​​​​​​​​​​​​​​​​​​​​​​​​​​
    alert(max);

jsfiddle のコード

于 2012-07-12T17:02:31.367 に答える
0

jQueryはそれをまっすぐに行うことはできないと思いますが、自分で行うことはできます。

var max = -1;
$("tr > td").each(function(index, element) {
    var n = Number($(element).html());
    if (n != NaN && max < n) {
        max = n;
    }
});

//console.log("your max value is " + max);

http://jsfiddle.net/N6MaJ/

于 2012-07-12T16:58:44.677 に答える
0

それらを配列に読み取ってから、JavaScript の max 関数を使用できます。

Math.max.apply(Math,$('#mytable td:nth-child(1)').map(function() {
  return $(this).text();
}).get());
于 2012-07-12T17:11:40.667 に答える