コードコピーは次のとおりです。
<!doctype html public " - // w3c // dtd xhtml 1.0 transitional // en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns = "http://www.w3.org/1999/xhtml">
<head>
<Meta http-equiv = "content-type" content = "text /html; charset = gbk" />
<title> un unt ittitled document </title>
</head>
<body>
<Table CellPacing = "0" CellPadding = "0" id = "tab">
<tr>
<td rowspan = "0"> Zhang san </td>
<td>男性</td>
<td> 22 </td>
<td>数学</td>
<td> 90 </td>
</tr>
<tr>
<td rowspan = "0"> Zhang san </td>
<td>男性</td>
<td> 22 </td>
<td>数学</td>
<td> 90 </td>
</tr>
<tr>
<td rowspan = "0"> Zhang san </td>
<td>女性</td>
<td> 22 </td>
<td>中国語</td>
<td> 70 </td>
</tr>
<tr>
<td rowspan = "0"> Zhang san </td>
<td>女性</td>
<td> 22 </td>
<td>英語</td>
<td> 60 </td>
</tr>
<tr>
<td rowspan = "0"> li si </td>
<td>女性</td>
<td> 22 </td>
<td>数学</td>
<td> 60 </td>
</tr>
<tr>
<td rowspan = "0"> li si </td>
<td>女性</td>
<td> 19 </td>
<td>中国語</td>
<td> 60 </td>
</tr>
<tr>
<td rowspan = "0"> wang wu </td>
<td>男性</td>
<td> 19 </td>
<td>英語</td>
<td> 60 </td>
</tr>
</table>
<script type = "text/javascript">
window.onload = function(){
var tab = document.getElementById( "tab");
var col = 0;
Megercell(タブ、col);
megercell1(タブ、col+1);
for(var i = 0; i <tab.rows.length; i ++){
// alert(tab.rows [i] .cells [0] .getattribute( "rowspan"));
}
};
function megercell(tab、col){
count = 1;
val = "";
for(var i = 0; i <tab.rows.length; i ++){
if(val == tab.rows [i] .cells [col] .innerhtml){
count ++;
}それ以外{
if(count> 1){
from = i -count;
tab.rows [from] .cells [col] .rowspan = count;
for(var j = from+1; j <i; j ++){
tab.rows [j] .cells [col] .style.display = "none";
}
count = 1;
}
val = tab.rows [i] .cells [col] .innerhtml;
}
}
}
関数megercell1(tab、col){
count = 1;
val = "";
var rowspan = 0;
for(var i = 0; i <tab.rows.length;){
rowspan = parseint(tab.rows [i] .cells [0] .getattribute( "rowspan"));
if(rowspan)
{
for(var n = 0; n <rowspan; n ++)
{
if(val == tab.rows [i] .cells [col] .innerhtml){
count ++;
}それ以外{
if(count> 1){
from = i -count;
tab.rows [from] .cells [col] .rowspan = count;
for(var j = from+1; j <i; j ++){
tab.rows [j] .cells [col] .style.display = "none";
}
count = 1;
}
val = tab.rows [i] .cells [col] .innerhtml;
}
i ++;
}
if(count> 1)
{
from = i -count;
アラート( + "" + i + "" + count);
tab.rows [from] .cells [col] .rowspan = count;
for(var j = from+1; j <i; j ++){
tab.rows [j] .cells [col] .style.display = "none";
}
}
count = 1;
val = "";
}
それ以外
{
i ++;
}
}
}
</script>
</body>
</html>