2012-12-24 24 views
1

table.rows.length在Java腳本中返回表中的行數,包括<thead>標記中的行數。我需要的是,如果有一個標題行(在<thead>之內)只有<th>元素,我想要這個行,並且我只需要有數據的行數而不是標題元素。我不能使用table.rows.length - 1,因爲我不能修改Javascript。我只能在HTML方面進行修改。這是代碼示例片段。在這裏,我需要算4不5.如何排除table.rows.length函數的html表格中的標題行?

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Sample</title> 
<script type="text/javascript"> 
function call(){  
    alert(document.getElementById('tab').rows.length); 
} 
</script> 
</head> 
<body onload="call()"> 
<table id="tab" border="1"> 
    <thead> 
     <th> 
      header 1 
     </th> 
     <th> 
      header 2 
     </th>   
    </thead> 
    <tbody> 
     <tr> 
      <td> data1</td> 
      <td> data1</td> 
     </tr> 
     <tr> 
      <td> data2</td> 
      <td> data2</td> 
     </tr> 
     <tr> 
      <td> data3</td> 
      <td> data3</td> 
     </tr> 
     <tr> 
      <td> data</td> 
      <td> data4</td> 
     </tr> 
    </tbody>  
    </table> 
</body> 
</html> 

回答

1

重新分配id<tbody>元素:

<table border="1"> 
    <tbody id="tab"> 
    ... 

由於該元素是<HTMLTableSectionElement>之一,它具有rows(的HTMLCollection)財產,所以你贏了」你必須對你的JS做任何改變。

+0

謝謝你的回答。這樣可行 !!! – Sanjeev