2012-04-25 55 views
0

Quick js \ jquery問題。選擇2行之間的表格行

我有一個表是這樣的:

<table id="test"> 
<tr class="divider"><td>Set 1</td></tr> 
<tr><td>Row 1</td></tr> 
<tr><td>Row 2</td></tr> 
<tr><td>Row 3</td></tr> 
<tr class="divider"><td>Set 2</td></tr> 
<tr><td>Row 4</td></tr> 
<tr><td>Row 5</td></tr> 
<tr><td>Row 6</td></tr> 
<tr class="divider"><td>Set 3</td></tr> 
<tr><td>Row 7</td></tr> 
<tr><td>Row 8</td></tr> 
<tr><td>Row 9</td></tr> 
</table> 

我想選擇只與類「分水嶺」行之間的3行。

我開始這裏的jsfiddle:http://jsfiddle.net/ZQhBP/1/

我使用nextUntil但它似乎沒有任何幫助是正確的工作

感謝。

回答

2

nextUntil()肯定工程:

var pull = $('.divider:first').nextUntil('.divider'); 
console.log(pull); 

JS Fiddle demo

而且搬完行並插入到一個新的表元素,第一個後:

var pull = $('.divider:first').nextUntil('.divider'); 
console.log(pull); 

$('<table />').insertAfter('table:first').append('<tbody />').html(pull); 

JS Fiddle demo

而且,如果你寧願複製/克隆到一個新表:

var pull = $('.divider:first').nextUntil('.divider'); 
console.log(pull); 

$('<table />').insertAfter('table:first').append('<tbody />').html(pull.clone(true,true)); 

JS Fiddle demo

參考文獻:

+0

完美的謝謝。 – 2012-04-25 14:45:10

+0

console.log(pull)做了什麼? – 2012-04-25 14:46:08

+0

你絕對受歡迎;我很高興得到了幫助! =)'console.log(pull)'將變量'pull'回顯/打印到控制檯。這很像'alert(拉)',除非它不那麼幹擾。看看你的JavaScript控制檯(IE和Chrome的F12),Firebug和Dragonfly也應該有類似的選擇。雖然我不知道這些瀏覽器的快捷鍵。 – 2012-04-25 14:46:11

1

http://jsfiddle.net/ZQhBP/4/

$('#test tr').not('.divider');

+0

這會選擇我希望只選擇特定分隔行之間的一組行的所有行。例如:第1行第2行第3行 – 2012-04-25 14:38:29

+0

關於哪些事件,頁面加載?點擊? – 2012-04-25 14:38:47

+0

@MarkK像這樣:'$('。divider:nth-​​child(1)')。nextUntil('。divider');' – paulslater19 2012-04-25 14:41:39