2012-08-04 62 views
0

我一直在为此苦苦挣扎了一段时间,并且尝试了许多搜索,但还没有找到正确的解决方案,也没有找到适合我的问题的文字。 我希望用jQuery遍历<tr><table id="Listeners">,并将行设置为Even或Odd类。将变量和DOM元素传递给jquery每个

的是还保存在一个变量,并传递给函数,如下所示:

<table id="Listeners"> 
<tr><td>1</td></tr> 
<tr><td>2</td></tr> 
</table> 

而且我的jQuery:

var Element = $("#Listeners"); 
$(Element+" tr").each(function(index) { 
if (index%2 == 0) { 
    $(this).addClass("Even"); 
} 
}); 

但是,这并不工作,任何想法如何解决这个?

+1

我想你想'$('选择',元素)...'? – 2012-08-04 21:12:00

+0

如何用'$('#listeners> tbody> tr')替换整个块。filter(':even')。addClass('even');'。 – 2012-08-04 21:12:28

+0

[JQuery斑马条纹表具有行组]的可能重复(http://stackoverflow.com/questions/8145719/jquery-zebra-stripe-table-that-has-groups-of-rows) – mplungjan 2012-08-04 21:16:27

回答

4

您可以使用find()方法和:even选择:

选择偶数元素,零索引。

var $element = $("#Listeners"); 
$element.find("tr:even").addClass("Even"); 
// or $element.find("tr").filter(':even').addClass("Even") 
+1

为什么不''.find('tr:even')'? – 2012-08-04 21:15:36

+1

演示:http://jsfiddle.net/eXxx7/1/ – 2012-08-04 21:21:04

+0

优秀! (“tr:偶数”).css(“background-color”,“#bbbbff”);' – 2012-08-04 21:25:10