Reputation: 45
I'm having trouble deleting a row from my table. It successfully deletes, but upon resorting, the deleted item reappears at the top of my table. It looks like it somehow hasn't been deleted completely. I don't work a lot with Javascript/html so I can't figure out why. Any insight is appreciated!
function deleteRow(toDelete) {
var table = document.getElementById("Table");
var i = 0;
alert(table.rows.length + "todelete=" + toDelete);
for (i = 0; i < table.rows.length; i++) {
if (table.rows[i].cells[4].innerText == toDelete) {
alert('Deleting Row' + i);
table.deleteRow(i);
i--;
}
}
ReSortTable('Table');
}
Upvotes: 0
Views: 186
Reputation: 207517
I do not think this will solve your problem [too much code for a comment], but instead of subtracting one when you delete the row, loop in the opposite direction.
function deleteRow(toDelete) {
var table = document.getElementById("Table");
var i;
alert(table.rows.length + "todelete=" + toDelete);
for (i = table.rows.length-1; i >= 0 ; i--) {
if (table.rows[i].cells[4].innerText == toDelete) {
alert('Deleting Row' + i);
table.deleteRow(i);
}
}
ReSortTable('Table');
}
Upvotes: 1