Why can't I dynamically add rows to a HTML table using JavaScript in Internet Explorer?

Posted by karlthorwald on Stack Overflow See other posts from Stack Overflow or by karlthorwald
Published on 2010-04-08T21:20:24Z Indexed on 2010/04/08 21:43 UTC
Read the original article Hit count: 154

In Firefox it works, in my Internet Explorer 6 or 7 it doesn't:

<html>
<head>

    <script type="text/javascript">
      function newLine() {
        var tdmod = document.createElement('td');
        tdmod.appendChild(document.createTextNode("dynamic"));

        var tr = document.createElement('tr');
        tr.appendChild(tdmod);

        var tt  = document.getElementById("t1");
        tt.appendChild(tr);
      }     

    </script>
</head>
<body>

    <a href="#" onclick="newLine()">newLine</a>

      <table id="t1" border="1">
        <tr>
          <td>
          static
          </td>  
        </tr>
      </table>

</body>

The user clicks on the link "newLine" and new rows should be added to the table.

How to make this work also in IE?

Edit: Thanks to the accepted answer I changed it like this and now it works:

  <table border="1">
   <tbody id="t1">
    <tr>
      <td>
      static
      </td>  
    </tr>
   </tbody>
  </table>

© Stack Overflow or respective owner

Related posts about JavaScript

Related posts about internet-explorer