日期:2014-05-16  浏览次数:20484 次

请教JS高手,table元素里的tbody
小弟我最近设计界面经过在三思索感觉用tbody来实现很有条理性。
可是现在有一个问题。我在IE8下用如下语法进行tbody对象的引用不行,其它浏览器没问题。兄弟们,帮看看。
alert(this.Table.tBodies[0].rows.length)

IE8=0
其它=9 ,因为我的tbody里有9行。

------解决方案--------------------
用jquery吧 , 这样你要轻松很多。 因为人家已考虑了浏览器的兼容性, 而且写起来优雅简洁。 
比如上面的就可以改成:

var $tbodyTrs = $("#tableID > tbody >tr");
alert( $tbodyTrs.length );
------解决方案--------------------
HTML code

<!DOCTYPE HTML>
<html>
    <head>
        <meta charset="gb2312" />
        <title></title>        
        <style>
        </style>        
    </head>
    <body>
<table id="myTable" border="1">
  <thead>
    <tr>
      <th>Month</th>
      <th>Savings</th>
      <th>Savings33</th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>January</td>
      <td>$100</td>
    </tr>
    <tr>
      <td>February</td>
      <td>$80</td>
    </tr>
  </tbody>

   <tbody>
    <tr>
      <td>January</td>
      <td>$102</td>
    </tr>
    <tr>
      <td>February</td>
      <td>$82</td>
    </tr>
  </tbody>

     <tbody>
    <tr>
      <td>January</td>
      <td>$300</td>
    </tr>
    <tr>
      <td>February</td>
      <td>$380</td>
    </tr>
  </tbody>

</table>
        <script src="https://ajax.googleapis.com/ajax/libs/mootools/1.3.2/mootools-yui-compressed.js"></script>
        <script>
            alert(  $('myTable').getChildren('tbody').length ) 
        </script>
    </body>
</html>

------解决方案--------------------
<script type="text/javascript">
myTable=document.getElementById("myTable");
tbody = myTable.getElementsByTagName("tbody");
alert(tbody.length);
</script>