1

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

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

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

它不是包装 row2、row3、row4 和 row5,而是包装接下来的四个 row2。

4

3 回答 3

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/

于 2012-08-30T17:48:40.300 回答
0

这应该选择您需要的行,但是您的包装元素会破坏结构

作为测试,我只是选择了前四行并将红色应用到它们,效果很好。

$("table").each(function(){
    $("tr",this).slice(1,5).css('color','red')
})
于 2012-08-30T17:50:30.797 回答
0
$('table').each(function(){
    $("tr:gt(0)",this).wrapAll("<tr class='wrapped'><td colspan='3'><table></table></td></tr>");  
})
于 2012-08-30T17:51:24.070 回答