I've tried to delete a dynamically created table row when the user clicks on the delete button which is part of that table row. But this doesn't seem to work for me. I've tried many different methods but still it either deletes from the firstly created row or doesn't delete at all. This is what I currently have at hand and doesn't work.
JS Function:
var rowID=0;
var table = document.createElement('table');
table.id = "attrtable";
table.className = "attrtable";
function showAttributes()
{
var tr = document.createElement('tr');
tr.id=rowID;
var attributeName = document.getElementById("attNam").value;
var choice=document.getElementById("attrTypefromCombo");
var attrTypeCombo = choice.options[choice.selectedIndex].text;
showAttrDivision.appendChild(attrName);
showAttrDivision.appendChild(attrType);
showAttrDivision.appendChild(closeattr);
var tdAttrName = document.createElement('td');
var tdAttrType = document.createElement('td');
var tdDelete = document.createElement('td');
var text1 = document.createTextNode(attributeName);
var text2 = document.createTextNode(attrTypeCombo);
var deletebtn = document.createElement("button");
deletebtn.type="button";
//deletebtn.id = rowID;
var text3= "<img src='../Images/Delete.png'>";
deletebtn.innerHTML = text3;
deletebtn.onclick = function() {
deleteRow(rowID);
};
tdAttrName.appendChild(text1);
tdAttrType.appendChild(text2);
tdDelete.appendChild(deletebtn);
tr.appendChild(tdAttrName);
tr.appendChild(tdAttrType);
tr.appendChild(tdDelete);
rowID++;
table.appendChild(tr);
showAttrDivision.appendChild(table);
}
function deleteRow(row)
{
document.getElementById("attrtable").deleteRow(row);
}