0

テーブルから行を削除できません。正常に削除されますが、再ソートすると、削除されたアイテムがテーブルの一番上に再表示されます。どういうわけか完全に削除されていないようです。私はJavascript/htmlをあまり使用しないので、理由がわかりません。どんな洞察も大歓迎です!

    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');
    }
4

1 に答える 1

1

これで問題 [コメントのコードが多すぎる] が解決するとは思いませんが、行を削除するときに 1 を引く代わりに、反対方向にループします。

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');
}
于 2012-08-02T18:59:24.590 に答える