jQuery包装表行

时间:2012-08-30 17:29:30

标签: jquery html-table

我正在尝试使用jQuery包装一组连续的表行,但是当我尝试定位它们时,它找不到我期望它的行。

$("tr.row1").next("tr:lt(4)").wrapAll("<tr class='wrapped'><td><table></table></td></tr>");​

我不确定如何正确解释这一点,所以请看一下这个例子:http://jsfiddle.net/uqp6H/

它不是包装row2 row3 row4和row5,而是包装下一个四行2。

3 个答案:

答案 0 :(得分:2)

​$('tr.row2').each(function() {
    $(this).nextUntil('tr.row5 + *').andSelf().wrapAll("<tr class='wrapped'><td colspan='3'><table></table></td></tr>");
});​​​​​​​​​​​​​​​​​

这从第2行包装到第5行。 (它还将包装器的colspan设置为3 - 如果需要的话)。

http://jsfiddle.net/g59mg/

答案 1 :(得分:0)

这应该选择你需要的行,但是你的包装元素正在搞乱结构

作为测试,我只是选择前四行并将红色应用于它们,这样可以正常工作。

$("table").each(function(){
    $("tr",this).slice(1,5).css('color','red')
})

答案 2 :(得分:0)

$('table').each(function(){
    $("tr:gt(0)",this).wrapAll("<tr class='wrapped'><td colspan='3'><table></table></td></tr>");  
})