3

我有一张桌子,里面有几行,下面有几行。有没有办法将样式应用到 TD,就像在使用 jQuery 的 TH 的每一行之后以奇数/偶数重新启动一样?

<table>
<tr>
  <th>header 1</th>
</tr>
<tr>
  <td>123</td>
</tr>
<tr>
  <td>445</td>
</tr>
<tr>
  <td>7899</td>
</tr>
<tr>
  <th>header 2</th>
</tr>
<tr>
  <td>asd</td>
</tr>
<tr>
  <td>ddd</td>
</tr>
<tr>
  <td>ggg</td>
</tr>
</table> 
4

2 回答 2

4
var i = 0;

$('table tr').each(function() {

    if ($(this).is(':has(th)')) return i = 0;    
    $(this).children().addClass(i++ % 2 ? 'odd' : 'even');
});​

http://jsfiddle.net/u9hjA/

于 2012-08-29T21:04:11.767 回答
3

试试下面的东西,

演示:http: //jsfiddle.net/Tvyfz/2/

$(function () {
   var zc = 0;

   $('table tr').each (function (idx, el) {
      if ($(el).find('th').length != 0) {
         zc = 0;
      } else {
         $(el).addClass((++zc%2)?'even':'odd');
      }

   });
});

注意:您的标记没有正确关闭</tr>

编辑:小清理。

于 2012-08-29T21:05:29.347 回答