user6244754
user6244754

Reputation: 33

Dynamically adding rows to a table

I'm trying to dynamically add a <tr> with two <td>s into a <table> via javascript, but my fiddle doesn't seem to do anything, does anyone see the problem?

Fiddle: https://jsfiddle.net/otL69Lpo/2/

HTML:

<button type="button" onclick="myFunction()">Click Me!</button>

<table class="table table-bordered" id="chatHistoryTable">
  <tr>
    <td>
      12:30:30
    </td>
    <td>
      text here
    </td>
</table>

JS:

function myFunction() {
  var table = document.getElementById("chatHistoryTable");

  var tr = document.createElement("tr");
  var td = document.createElement("td");
  var td2 = document.createElement("td");
  var txt = document.createTextNode("TIMESTAMP");
  var txt2 = document.createTextNode("user: text");

  td.appendChild(txt);
  td2.appendChild(txt2);
  tr.appendChild(td);
  tr.appendChild(td2);
  table.appendChild(tr);
}

Output should be as:

| TIMESTAMP | user: text |

Upvotes: 3

Views: 52

Answers (1)

Brett DeWoody
Brett DeWoody

Reputation: 62881

This is a common issue in jsFiddle. There are several options for how to load the JS and you'll need to change the loading to either:

  • No wrap - in <head>
  • No wrap - in <body>

enter image description here

Upvotes: 2

Related Questions