<table>
<tr><td>1</td></tr>
<tr><td>2</td></tr>
<tr><td>3</td></tr>
<tr><td>1</td></tr>
<tr><td>3</td></tr>
<tr><td>3</td></tr>
</table>
如上一个表格,如何用jquery将相同内容的行合并
最终要实现的效果是:<table>
<tr><td rowspan="2">1</td></tr>
<tr><td>2</td></tr>
<tr><td rowspan="3">3</td></tr>
</table>
解决方案 »
- 求一js正则表达式
- 关于"对象不支持此属性或方法的"错误????
- 如何做到:鼠标离开文本时进行计算并显示
- 请问用QuickCHM做的可执行文件,能否和网页进行连接?如果能的话该如何链接?如果不能的话能否插入到网页中去?
- 控制播放器的一个简单问题?
- 在IE中能够浏览为什么不能在MOZILA中浏览呢?(附文件)
- 如何调用iframe里的js方法?谢谢
- form的嵌套问题?着急!
- 请问按如下方式作单选钮的选择情况控制为什么无论是否选择选择哪个选项都alert啊?3x
- 请问哪里有用JSCRIPT实现的文本编辑器,能够在Textarea里边生成相应的HTML代码?
- 新手求助..js问题...
- javascript中如何获得选中文字所在的节点
var t = $(this).text();
var cnt = 1;
$(this).parent().nextAll().find("td").each(function(){
if ($(this).text() == t)
{
cnt++;
$(this).empty();
}
});
$(this).replaceWith("<td rowspan='"+cnt+"'>"+t+"</td>");
});
<table id="table1">
<tr><td>1</td></tr>
<tr><td>2</td></tr>
<tr><td>3</td></tr>
<tr><td>1</td></tr>
<tr><td>3</td></tr>
<tr><td>3</td></tr>
</table> function unite(tableID, index) {
var tds = $('#' + tableID + ' tr td:nth-child(' + index + ')');
tds.each(function(index, elem) {
var sameTds = $.grep(tds, function(n) { return $(n).html() == $(elem).html(); });
if (sameTds.length > 1) {
sameTds.shift().rowSpan = sameTds.length + 1;
$(sameTds).each(function() { $(this).parents('tr').remove(); });
}
});
} unite('table1', 1);