2016-05-17 31 views
-1

我想要在網站中使用jquery:lt()選擇器它的方式 「描述:選擇索引小於index的所有元素在匹配的集合中。」 https://api.jquery.com/lt-selector/爲什麼jQuery比選擇器不工作

<table border="1"> 
<tr><td>row0</td></tr> 
<tr><td>row1</td></tr> 
<tr><td>row2</td></tr> 
<tr><td>row3</td></tr> 
<tr><td>row4</td></tr> 
<tr><td>row5</td></tr> 
<tr><td>row6</td></tr> 
</table> 

我想選擇ROW3和ROW4所以我嘗試:

$("table tr:gt(2):lt(5)").css('background','red'); 

但它似乎沒有工作,它選擇ROW3,ROW4,ROW5,ROW6任何想法?

https://jsfiddle.net/foreyez/v3ro64bf/

編輯:這是不是重複。我想解決我的具體問題。我如何獲得row3和row4。

+0

$(「表TR:GT(2) :LT(2)「)的CSS( '背景', '紅色');試試這個 –

+1

$(「table tr:lt(5):gt(2)」)。css('background','red'); http://stackoverflow.com/questions/4691854/how-select-elements-between-interval – Lirianer

+0

[此解決方案很聰明,提高了可讀性](http://stackoverflow.com/a/1137244/1073758)。 – moonwave99

回答

4

:lt的索引是由:gt返回的索引。 :lt只有4個元素進入它,其中所有他們有一個指數小於5,所以他們都匹配。

第一:gt有效返回行3,4,5,和6中,和只有那些行:lt針對匹配。

如果你只需要選擇行3和4,你想:gt(2):lt(2)選擇由:gt(2)返回的前兩行:

$("table tr:gt(2):lt(2)").css('background','red');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table border="1"> 
 
<tr><td>row0</td></tr> 
 
<tr><td>row1</td></tr> 
 
<tr><td>row2</td></tr> 
 
<tr><td>row3</td></tr> 
 
<tr><td>row4</td></tr> 
 
<tr><td>row5</td></tr> 
 
<tr><td>row6</td></tr> 
 
</table>

+0

所以LT基本上是我想要刪除的行數? (當與gt結合時) – foreyez