[JQuery]如何让表格奇偶行显示不同背景色

时间:2021-10-25 13:34:20

做表格的时候,经常要让奇偶行显示不同背景色,一来使表格显得更美观,二来使同行数据查找更快捷方便。通常我们是怎么实现的呢?就是在每个tr标签上加css样式。

代码如下所示:

<html>
<style type="text/css">
.odd {
background-color:yellow;
}


.even {
background-color:red;
}

</style>


<body>
<table border="1">
<tr class="odd">
<td>No.1</td>
<td>0001</td>
</tr>
<tr class="even">
<td>No.2</td>
<td>0002</td>
</tr>
<tr class="odd">
<td>No.3</td>
<td>0003</td>
</tr >
<tr class="even">
<td>No.4</td>
<td>0004</td>
</tr>
</table>
</body>
</html>

显示效果:
[JQuery]如何让表格奇偶行显示不同背景色

但是假设表格有上百行甚至上千行,同时不允许修改后台代码,只能修改前台页面,这样的话每个tr元素都加css样式就比较费劲了。有什么办法可以用最简洁的方式,达到同样的页面效果呢?答案就是JQuery。

JQuery对标签的控制实在是太强大了,你可以通过选择器找到页面上任意一个标签,同时为该标签添加CSS样式。

只需要引入JQuery的库文件,再添加以下四行代码就OK了。

$(document).ready(function() {
$('tr:odd').addClass('odd');
$('tr:even').addClass('even');
});

■简单解释一下选择器的用法:
$(‘tr’)代表遍历选择页面上所有tr元素
$(‘tr:odd’)代表遍历选择页面上所有tr元素的奇数行,请注意tr元素下标是以0开始的,tr[1]为奇数行。
$(‘tr:even’)代表遍历选择页面上所有tr元素的偶数行,请注意tr元素下标是以0开始的,tr[0]为偶数行。

修改后的完整代码:

<html>

<style type="text/css">
.odd {
background-color:yellow;
}


.even {
background-color:red;
}

</style>

<script language=JavaScript src="js/jquery.min.js" type=text/javascript></script>
<script>
$(document).ready(function() {
$('tr:odd').addClass('odd');
$('tr:even').addClass('even');
});
</script>

<body>
<table border="1">
<tr>
<td>No.1</td>
<td>0001</td>
</tr>
<tr>
<td>No.2</td>
<td>0002</td>
</tr>
<tr>
<td>No.3</td>
<td>0003</td>
</tr>
<tr>
<td>No.4</td>
<td>0004</td>
</tr>
</table>
</body>
</html>