我有一张桌子,第二列有国家,我有很多国家,但我需要显示有多少来自美国,有多少来自日本。
我使用此代码来获取列中的值,但是 我如何比较和计算这些值?
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
答案 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);
希望这有帮助