JSFiddle - React, Tailwind, and code Playground
HTML
<script src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/1.0.0/handlebars.min.js"></script>
<div id="container">
<table>
<tr><th>name</th><th>input</th><th>feedback</th></tr>
</table>
</div>
CSS
table { border-spacing: 0; }
th { background: lightblue; text-align: left; }
td, th { padding: 5px; }
tr:nth-child(even) { background: #EEE; }
tr:nth-child(odd) { background: #CCC; }
JavaScript
var json = {
userinput: [
{name: "brian", "value": "i like pies"},
{name: "susan", "value": "memes are stupid"},
{name: "jimbo", "value": "good timez, eh?"},
{name: "foo", "value": "bar"}
],
feedback: [
{value: "i also like pies"},
{value: "null"},
{value: "nah"},
{value: "baz"}
]
};
Handlebars.registerHelper('list', function(input, feedback, options) {
var out = "", data;
for (var i=0; i<input.length; i++) {
if (options.data) {
data = Handlebars.createFrame(options.data || {});
data.index = i;
data.feedback = feedback[i];
}
out += "<tr>" + options.fn(input[i], { data: data }) + "</tr>";
}
out += "";
return out;
});
var template = "{{#list userinput feedback}}<td>{{name}}</td><td>{{value}}</td><td>{{@feedback.value}}</td>{{/list}}";
var compiled = Handlebars.compile(template);
var html = compiled(json);
$("table").append(html);