通过jQuery添加

时间:2013-04-07 09:22:11

标签: jquery dom html-table row tablerow

我有问题,我不知道如何解决它:

我有一张桌子:


| A | B |

| D | C |

<table>
<tr>
<td>
A
</td>
<td>
B
</td>
</tr>
<tr>
<td>
C
</td>
<td>
D
</td>
</tr>
</table>

现在我需要在每个奇数td之后添加</tr><tr>。结果应该是一个列表:


| A |

| B |

| C |

| D |

我已经尝试使用jQuery $("#table tr > td:nth-child(odd)").after("</tr><tr>");来完成这项工作,但它不起作用。

任何人都可以提供建议吗?

2 个答案:

答案 0 :(得分:1)

尝试

$('table td:odd').each(function(i, v){
    var $this = $(this);
    var parent = $this.parent();
    $this.detach().wrap('<tr></tr>').insertAfter(parent)
})

演示:fiddle

答案 1 :(得分:0)

试试这个:(http://jsfiddle.net/b5S3U/4/

var cols = 1;
$('tr').each(function () {
    var after = $(this);
    while ($(this).children().length > cols) {
        after = $('<tr>').insertAfter(after).append($('>:gt(' + (cols - 1) + '):lt(' + (cols) + ')', this));
    }
})