2012-04-25 18 views
0

クイック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

よろしくお願いいたします。 –

+0

console.log(pull)は何をしますか? –

+0

あなたは絶対に歓迎です。私は助けになってうれしいです! =) 'console.log(pull)'は変数 'pull'をコンソールにエコー/プリントします。それは、それほど邪魔にならないことを除けば、 'alert(pull)'のようなものです。 JavaScriptコンソール(Internet ExplorerとChromeの場合はF12)を見ると、FirebugとDragonflyも同様のオプションが必要です。私はそれらのブラウザのためのショートカットを知らないけれども。 –

1

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

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

+0

これは、特定のディバイダ行の間の行のセットのみを選択することを望んでいたすべての行を選択します。例:行1行2行3 –

+0

どのようなイベントで、ページロード?クリック数? –

+0

@MarkKこのように: '$( '。ディバイダ:nth-​​child(1)')nextUntil( '。divider');' – paulslater19

関連する問題