JSFiddle - React, Tailwind, and code Playground
HTML
<form method="POST">
<table id="dataTable" width="100%" border="0">
<tr>
<td><input value="" type="checkbox" name="seiten[0][aktiv]"/ checked="checked"></td>
<td><input type="text" style="width: 500px" name="seiten[0][value]"/></td>
<td>
<img src="http://findicons.com/files/icons/1156/fugue/16/plus_button.png" onclick="addRow('dataTable')">
<img src="http://findicons.com/files/icons/1156/fugue/16/minus_button.png" onclick="deleteRow('dataTable')">
</td>
<td>
</td>
</tr>
</table>
<input type="submit" name="Submit" value="Daten jetzt Speichern" />
</form>
JavaScript
function addRow(tableID) {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var colCount = table.rows[0].cells.length;
for(var i=0; i<colCount; i++) {
var newcell = row.insertCell(i);
newcell.innerHTML = table.rows[0].cells[i].innerHTML;
//alert(newcell.childNodes);
switch(newcell.childNodes[0].type) {
case "text":
newcell.childNodes[0].value = "";
break;
case "checkbox":
newcell.childNodes[0].checked = true;
break;
case "select-one":
newcell.childNodes[0].selectedIndex = 0;
break;
}
}
}
function deleteRow(tableID) {
try {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
for(var i=0; i<rowCount; i++) {
var row = table.rows[i];
var chkbox = row.cells[2].childNodes[0];
if(null != chkbox && true == chkbox.checked) {
if(rowCount <= 1) {
alert("Cannot delete all the rows.");
break;
}
table.deleteRow(i);
rowCount--;
i--;
}
}
}catch(e) {
alert(e);
}
}