0

http://jsfiddle.net/dweiliu/bcHsy/2/

私はしばらくこれに取り組んでいましたが、何かが欠けています...

jQuery の関連ブロック。

$('article.weeklyStandings').each(function(){
    var winningPercentage = $('tr.record:nth-of-type(2)',this).find('td:nth-of-type(4)');
    $('tr.record',this).each(function(){
        var percentageWon = $(this).find('td:nth-of-type(4)');
        if (percentageWon == winningPercentage) {
            $('td:nth-of-type(1)', this).html("winner");
        }
    });
});

jsfiddle リンクで利用可能なコンテキスト: http://jsfiddle.net/dweiliu/bcHsy/2/

列 4 にいくつかの結果を含むテーブルがあります。列のすべての行を調べて、値を 2 行目と比較したいと考えています。その値に==だったら何とかしたい。

私は何を間違っていますか?

4

2 に答える 2

0

text()実行した 2 つの jquery セレクターの結果の値を比較してみてください。したがって、次の行を変更します。

if (percentageWon == winningPercentage)

読むために:

if (percentageWon.text() == winningPercentage.text())

それが役立つことを願っています。

于 2013-08-08T18:46:00.717 に答える
0

これを試してみてください。要素をバッファリングし、反復が 1 回しか必要ないため、少し効率的です。

$(document).ready(function() {
    var count = 0;
    var container = $('article.weeklyStandings'); // buffer the container
    var records = container.find('tr.record'); // buffer the winnin records
    var winner = 0;

    records.each(function() {
        var cells = $(this).children('td');
        // use text() and trim so extra space do not break the number conversion
        var gamesWon = parseInt(cells.eq(1).text().trim()); 
        var gamesPlayed = parseInt(cells.eq(2).text().trim());                  
        var percentage = (gamesWon / gamesPlayed * 100).toFixed(1);                 

        // save the percentage so it could be selected
        cells.eq(3).attr("wining-percent", percentage).text(percentage + "%");

        // add to the players count
        count++;
        if (percentage >= winner)
            winner = percentage; 
    });

    // write the amount of players
    container.find("h2").append(" - " + count + " Players");                
    // now add the winning class to the winners
    records.find('td[wining-percent="' + winner + '"]').parent().addClass("winner");
});

DOM から値を取得するのではなく、情報を処理してサーバーから JSON を取得することをお勧めします。

于 2013-08-08T19:04:29.763 に答える