コード: コードをコピー コードは次のとおりです: merge.html <br>function merge1(){ //可实单元格,通過開始セルの比较 <br>var totalRow = $("#tbl").find("tr").length; <br>var totalCol = $("#tbl").find("tr").eq(0).find("td").length; <br>for(varcol=totalCol-1;col>=1;col--){<br>spanNum =1; <br>startCell = $("#tbl").find("tr").eq(totalRow-1).find("td").eq(col); <br>for(var row = totalRow-1;row>=1;row--){ <br>targetCell = $("#tbl").find("tr").eq(row-1).find ("td").eq(col); <br>if(startCell.text() == targetCell.text() && startCell.text()!=""){ <br>spanNum ; <br>targetCell.attr("rowSpan",spanNum); <br>startCell.remove(); <br>}else{ <br>spanNum =1; <br>} <br>startCell = targetCell; <br>} <br>} <br>} <br>function merge2() { //可实现合并单元格,上下行来比较 <br>var totalCols = $("#tbl").find("tr :eq(0)").find("td").length; <br>var totalRows = $("#tbl").find("tr").length; <br>for ( var i = totalCols-1; i >= 1; i--) { <br>for ( var j = totalRows-1; j >= 1; j--) { <br>startCell = $("#tbl").find("tr").eq(j).find("td").eq(i); <br>targetCell = $("#tbl").find("tr").eq(j - 1).find("td").eq(i); <br>if (startCell.text() == targetCell.text() && targetCell.text() != "") { <br>targetCell.attr("rowSpan", (startCell.attr("rowSpan")= =未定義)?2:(eval(startCell.attr("rowSpan")) 1)); <br>startCell.remove(); <br>} <br>} <br>} <br>} <br>/*先合并、使用スタイルのdisplay:none将同元素隐藏、その後再削除 <br>*/ <br>function merge3() { <br>var totalCols = $("#tbl").find("tr:eq(0)").find("td").length; <br>var totalRows = $("#tbl").find("tr").length; <br>for(varcol=totalCols-1;col>=1;col--){<br>spanNum =1; <br>startCell = $("#tbl").find("tr").eq(totalRows-1).find("td").eq(col); <br>for(var row = totalRows-1;row>=1;row--){ <br>targetCell = $("#tbl").find("tr").eq(row-1).find ("td").eq(col); <br>if(startCell.text() == targetCell.text() && startCell.text()!=""){ <br>spanNum ; <br>targetCell.attr("rowSpan",spanNum); <br>startCell.attr("style","visibility:hidden"); <br>// startCell.attr("style","display:none"); <br>}else{ <br>spanNum =1; <br>} <br>startCell = targetCell; <br>} <br>} <br>for(var j=totalCols-1;j>=1;j--){ <br>for(var i=totalRows-1;i>=1;i-- ){ <br>cell = $("#tbl").find("tr").eq(i).find("td").eq(j); <br>if(cell.attr("style")!=未定義){ <br>if(cell.attr("style")=="visibility:hidden"){ <br>cell.remove(); <br>} <br>} <br>} <br>} <br>} <br>function merge4(){ // マージ 3 メソッドに似ており、目的は次の表示: なし 可視性: 非表示の効果領域 <br>var totalCols = $("#tbl").find("tr:eq(0)").find("td").length; <br>var totalRows = $("#tbl").find("tr").length; <br>for(varcol=totalCols-1;col>=1;col--){<br>spanNum =1; <br>startCell = $("#tbl").find("tr").eq(totalRows-1).find("td").eq(col); <br>for(var row = totalRows-1;row>=1;row--){ <br>targetCell = $("#tbl").find("tr").eq(row-1).find ("td").eq(col); <br>if(startCell.text() == targetCell.text() && startCell.text()!=""){ <br>spanNum ; <br>targetCell.attr("rowSpan",spanNum); <br>startCell.attr("style","display:none"); <br>// startCell.attr("style","display:none"); <br>}else{ <br>spanNum =1; <br>} <br>startCell = targetCell; <br>} <br>} <br>for(var j=totalCols-1;j>=1;j--){ <br>for(var i=totalRows-1;i>=1;i-- ){ <br>cell = $("#tbl").find("tr").eq(i).find("td").eq(j); <br>if(cell.attr("style")!=未定義){ <br>if(cell.attr("style")=="display:none"){ <br>cell.remove(); <br>} <br>} <br>} <br>} <br>}<br> 销售時間 裙子 裤子 风衣 鞋子 頭> 8:00-9:00 3 4 9:00-10:00 3 2 5 3 10:00-11:00 3 2 1 11:00-12:00 1