比较值Jquery和sum

时间:2013-11-22 14:06:49

标签: jquery

我有一张桌子,第二列有国家,我有很多国家,但我需要显示有多少来自美国,有多少来自日本。

我使用此代码来获取列中的值,但是 我如何比较和计算这些值?

var items=[];
//Iterate all td's in second column
$('#MyTable>tbody>tr>td:nth-child(2)').each( function(){
   //add item to array
   items.push( $(this).text() );       
});

我需要将其显示在表格底部

这是HTML

<table id="MyTable" width="620px;">
    <tbody>
        <tr>
            <td> </td>
            <td class="country">US</td>
            <td><a href="http://google.com" target="_blank">google.com</a></td>
            <td>12/21/2012</td>
        </tr>
        <tr class="alt">
            <td> </td>
            <td class="country">Japan</td>
            <td><a href="http://google.info" target="_blank">google.info</a></td>
            <td>12/21/2012</td>
        </tr>
        <tr>
            <td> </td>
            <td class="country">Japan</td>
            <td><a href="http://google.info" target="_blank">google.info</a></td>
            <td>12/21/2012</td>
        </tr>
        <tr class="alt">
            <td>Migration</td>
            <td class="country">tokyo</td>
            <td><a href="http://google.info" target="_blank">google.info</a></td>
            <td>12/21/2012</td>
        </tr>
    </tbody>
</table>

应显示日本2,美国:1东京:1

1 个答案:

答案 0 :(得分:0)

由于你使用的是jQuery,你可以看一下这个小提琴:它可以做你想做的事:http://jsfiddle.net/QtBlueWaffle/LHK8h/2/

但你应该看一下:http://www.w3schools.com/jsref/jsref_obj_array.asp

以下是我使用的代码:

var items = [];
//Iterate all td's in second column
$('#MyTable>tbody>tr>td:nth-child(2)').each(function () {
    //add item to array
    items.push($(this).text());
});

var countries = [];
var countriesNumbers = [];
for (var i = 0; i < items.length; i = i + 1) {
    var index = countries.indexOf(items[i]);
    if (index != -1) {
        countriesNumbers[index] += 1;
    } else {
        countries.push(items[i]);
        countriesNumbers.push(1);
    }

}

// Build the resulting string
var result = "";
for (var i = 0; i < countries.length; i += 1) {
    result = result.concat(countries[i]).concat(":").concat(countriesNumbers[i]).concat(";");
}
// Show the result
$("#result").html(result);

希望这有帮助