如何找到2个不同类的tr的总和,而不计算没有类的所有tr行

时间:2015-06-08 20:25:01

标签: jquery

我目前正在使用以下脚本来确定每个表中有多少表行,然后根据返回的表行数附加数据。这些表是动态创建并添加到站点的,我以为他们总是有3个存在,即使没有填充其他数据也是如此。但是我发现这是不正确的,所以现在这个脚本需要调整一下。

那我怎么能在这里编辑这一行

if($(this).find("tr").length !== +RequiredStarters &&

找到tr.oddtablerow和tr.eventablerow的总和,而不是每个tr?

var RequiredStarters = 9;   // ENTER THE NUMBER OF STARTERS YOUR LEAGUE REQUIRES

$(document).ready(function () {
  $.get('myurl', function (data) {
    $(data).find('td.two_column_layout .report').each(function(index, element){
      if($(this).find("tr").length !== +RequiredStarters + 3 && $(this).attr("id") !== "InvalidLineup"){
        var target = $("#InvalidLineup").find("tbody");
        $(this).find("span a").each(function(){
            target.append("<tr><td class='lineupalert'>" + $(this)[0].outerHTML + "<a class='lineuplink' href='#'>Submit Valid Lineup</a></td></tr>");
        });
      }
    });
  });
});

这是一个html示例,我现在需要计算tr.oddtablerow和tr.eventable行。

<table>
 <caption><span><a></a></span></caption>
  <tbody>
    <tr></tr>
    <tr class="oddtablerow"></tr>
    <tr class="eventablerow</tr>
    <tr class="oddtablerow"></tr>
    <tr class="eventablerow</tr>
    <tr class="oddtablerow"></tr>
    <tr class="eventablerow</tr>
    <tr class="oddtablerow"></tr>
    <tr class="eventablerow</tr>
    <tr></tr>
  </tbody>
</table>

1 个答案:

答案 0 :(得分:1)

在回答中转换我的评论,请使用:

$('tr.oddtablerow, tr.eventablerow').length

或者更好,这个:

$('tr[class]').length

FIDDLE1:https://jsfiddle.net/lmgonzalves/xq1k33nh/

FIDDLE2:https://jsfiddle.net/lmgonzalves/xq1k33nh/1/