将on click事件附加到表头

时间:2012-10-22 18:10:58

标签: javascript html html5 dom

  

可能重复:
  MSIE and addEventListener Problem in Javascript?
  Returning the Name of a column header

对于我的生活,以及我对javascript的了解,我似乎无法得到这个,它在第13行失败。我基本上试图尝试向TH添加onclick事件以提醒我的价值。我正在使用IE7。

<script type="text/javascript">



function init() {

var titles = document.getElementsByTagName("th"); 

for ( var i = 0, len < titles.length; i < len; i++ ) {    
    titles[i].addEventListener("click", function() { 
        alert( this.innerHTML ); 
    }, false); 
} 

}//end of function

</script>

</head>

<body onload="init()">

<table border="1" cellspacing="1" width="500">
    <tr>
        <th>FRUITS</th>
        <th>COLORS</th>
        <th>VEGGIES</th>
        <th>NUMBERS</th>
    </tr>
    <tr>
        <td>apples</td>
        <td>red</td>
        <td>carrots</td>
        <td>123</td>
    </tr>
    <tr>
        <td>oranges</td>
        <td>blue</td>
        <td>celery</td>
        <td>456</td>
    </tr>
    <tr>
        <td>pears</td>
        <td>green</td>
        <td>brocoli</td>
        <td>789</td>
    </tr>
    <tr>
        <td>mangos</td>
        <td>yellow</td>
        <td>lettuce</td>
        <td>098</td>
    </tr>
</table>



</body>

</html>

1 个答案:

答案 0 :(得分:0)

您的for声明中有错误,您错误地分配给len变量,因此请替换以下行:

for ( var i = 0, len < titles.length; i < len; i++ ) {

这个:

for ( var i = 0, len = titles.length; i < len; i++ ) {