I am using jQuery to try and construct a table for a web app from a JSON object (using the async getJson call), and I am having difficulty getting to the bottom of the order of execution.
My JS is:
//create table header
$('#peopleDirectory').append(
"<table><thead><tr><th>column header!</th>"
+"</tr></thead><tbody>"
);
//iterate through list to create table row:
$.each(jsonArray.members, function(i, membObj) {
$('#peopleDirectory').append(
"<tr>"
+ "<td>" + membObj.name + "</td>"
+ "</tr>"
);
});
//end table
$('#peopleDirectory').append("</tbody></table>");
I create the table and the header row, and then iterate the returned JSON to create the table rows, before closing the table. However, if I use the jQuery $('#peopleDirectory').html() then it produces the table header, then closes the table, and then appends the rows from the JSON (and the table does not appear correctly)
Can anyone help me out with why its executing the appends in this order?