计数表 主体元素内的长度

Counting tables Length inside a body element

本文关键字:元素 主体      更新时间:2023-09-26

我有一个页面即将出现:

<html<head></head><body><table><tr><td><table><table></td></tr></table><table></table><table></table></body></html>

现在上面的页面有 3 个表格,我正在尝试计算 body 元素内的表格,我正在使用长度来计数,但它给了我无效的结果

alert($('#data').find("table").length);
if ($('#data').find("table").length <= 2) {
    $('#data').find("table:first").remove();
$('#data').find("table:last").remove();
}

它给了我 85,这是错误的,得到这个的正确方法是什么:

请参阅下面的示例并根据需要进行调整。

$( document ).ready(function() {
  var n = $( "table" ).length;
 
  $( ".table-count" ).text( "There were  " + n + " Tables but the first and last are hidden"); 
  // kill the line above if you don't want the count output
  
  if($('table').length >= 3 ) { 
  // The above says; if there 3 or more tables, execute the line below
         $('table:first,table:last').hide();  
	}			 
});
table {
  height: 100px;
  width: 100px;
  background-color: green;
  display: inline-block;
  margin: 10px;
  }
.table-count {
  font-size: 24px;
  font-weight: bold;
  color: red;
  margin: 10px;
  }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table></table> 
<table></table> 
<table></table>

<div class="table-count"></div><!-- End Table COunt -->

注意你的解释;我不认为 if 条件是必要的,你可以单独做下面这样的事情,第一个和最后一个将永远被隐藏。

$('table:first,table:last').hide(); // Adjust as needed

这将获取正文中的表数。

var numTables = $('body table').length;
alert(numTables);

编辑:要获取某个元素中的所有表,请将主体选择器更改为适当的类或 id 等选择器。