<body>
<table id="table_s" width="98%" border="1" cellspacing="2" cellpadding="2">
  <tr>
    <td>高峰时段分萨菲都是</td>
    <td>是高手 </td>
  </tr>
  <tr>
    <td>撒古斯个萨格 </td>
    <td>阿三哥隔热个人 </td>
  </tr>
    <tr>
    <td>撒古斯个萨格 </td>
    <td>阿三哥隔热个人 </td>
  </tr>
</table><script type="text/javascript"> 
var tbl = document.getElementById("table_s"); 
for(var i=0;i <tbl.rows.length;i++){ 
  if(i%2 == 0) tbl.rows[i].style.backgroundColor ="#996633"; 
  else tbl.rows[i].style.backgroundColor = "#FF0000"; 

</script>
</body>
我试了,没有问题了,你知道是因为什么吗,var tbl = document.getElementById("table_s");放在上面时找不到对象。

解决方案 »

  1.   

    <script language="javascript">
    window.onload = function(){
    var oTable = document.getElementById("oTable");
    for(var i=0;i<oTable.rows.length;i++){
    if(i%2==0) //偶数行时
    oTable.rows[i].className = "altrow";
    }
    }
    </script>可以放到head区内。其实你可以用jquery方便地实现隔行变色功能:代码如下:<script language="javascript" src="jquery.min.js"></script>
    <script language="javascript">
    $(function(){
    $("table.datalist tr:nth-child(odd)").addClass("altrow");
    });
    </script>
      

  2.   

    对呀,放到window.onload 中或者 否则你必须把代码放到 html之后,因为在你的代码执行的时候html还没有载入呢,也就找不到table
      

  3.   

    纯粹胡扯,非函数需要什么onload事件,代码的加载顺序问题,把JS的代码放到表格后面就可以了
      

  4.   

    是啊 呵呵 得放到</html>之后
    搞定