计算此 tbody 中的总行数

Count the total number of rows in this tbody

我一直在尝试计算位于我的嵌套 tbody 中的 tr 的总数,但我无法获得总数。我尝试使用以下 jQuery 代码获取它,但它 return 是一个很大的数字,如 44 行,而我期望它是 return 7 行。

你能告诉我哪里出错了吗?

var count = $("#rbe_viewTab0 table tbody tr td table tbody tr").length;
alert(count);
<div id="rbe_viewTab0" class="nothing" style="display:block;margin-top:0px" isloaded="Y">
    <table class="wide" cellspacing="0" cellpadding="10" border="0">
        <tbody>
            <tr>
                <td>
                    <table class="wide" cellspacing="0" cellpadding="10" border="0">
                        <tbody>
                            <tr></tr>
                            <tr>
                              <td id="xyz">Row 2</td>
                            </tr>
                            <tr></tr>
                            <tr></tr>
                            <tr></tr>
                            <tr></tr>
                            <tr></tr>
                        </tbody>
                    </table>
                </td>
            </tr>
        </tbody>
    </table>
</div>

我希望总行数为 return 7 行,第 2 行的索引为“1”。

尝试

var count = $("#rbe_viewTab0 > table > tbody > tr > td > table > tbody > tr").length; alert(count);

我认为您的选择器可能有误。这是一个片段。

var count = $("#rbe_viewTab0 > tbody > tr > td > table.wide > tbody > tr").length;
var index = $("#rbe_viewTab0 > tbody > tr > td > table.wide > tbody > tr > td#xyz").parent().index();
alert(count);
alert(index);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<table id="rbe_viewTab0">
  <tr>
    <td>
      <table class="wide">
        <tr>
          <td>Row 1</td>
        </tr>
        <tr>
          <td id="xyz">Row 2</td>
        </tr>
        <tr>
          <td>Row 3</td>
        </tr>
        <tr>
          <td>Row 4</td>
        </tr>
        <tr>
          <td>Row 5</td>
        </tr>
        <tr>
          <td>Row 6</td>
        </tr>
      </table>
    </td>
  </tr>
</table>

编辑 这是索引的选择器。还更新了我的代码片段。

var index = $("#rbe_viewTab0 > tbody > tr > td > table.wide > tbody > tr > td#xyz").parent().index();

$('tbody tbody tr').length 可以。

例如http://jsbin.com/bacosijina/1/edit?html,output

编辑: 现在,您已经更新了问题: $('table table tr').length 可以。即 table 中的行由 table

包含

Edit Edit: 好的,问题中的标记又变了。也许您想选择 $('#rbe_viewTab0 tbody tbody tr').length

例如http://jsbin.com/suxolo/1/edit?html,output