I'm using ajax to load json data into several accordion tables on the same html page. So far, I have the same function written twice to output 2 tables, but I need 16 more tables. Having the same function written out 18 times doesn't seem dry at all, so I'm thinking there must be better way.
let myArray = [];
$.ajax({
method: "GET",
url: "https://chrisjschreiner.github.io/data/verbs1.json",
success: function (response) {
myArray = response;
buildTable1(myArray[0]);
buildTable2(myArray[1]);
},
});
let buildTable1 = (data) => {
let table = document.getElementById("myTable1");
for (const [key, value] of Object.entries(data)) {
let row = `<tr>
<td>${key}</td>
<td>${value}</td>
</tr>`;
table.innerHTML += row;
}
};
let buildTable2 = (data) => {
let table = document.getElementById("myTable2");
for (const [key, value] of Object.entries(data)) {
let row = `<tr>
<td>${key}</td>
<td>${value}</td>
</tr>`;
table.innerHTML += row;
}
};
Any suggestions?