ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptでテーブルから行を削除する方法

JavaScriptでテーブルから行を削除する方法

藏色散人
藏色散人オリジナル
2021-07-01 10:14:293188ブラウズ

JavaScript でテーブルの削除を実装する方法: 最初に HTML サンプル ファイルを作成し、次にテーブルを定義し、最後に「function deleteRow(_this){...}」メソッドを使用して行を削除する関数を実装します。 . .

JavaScriptでテーブルから行を削除する方法

この記事の動作環境: Windows7 システム、JavaScript バージョン 1.8.5、DELL G3 コンピューター

行の削除方法JavaScriptのテーブルから?

JavaScript はテーブルの行を動的に追加および削除します

行を追加する関数を実装するメソッドを合計 3 つと、行を削除する関数を実装するメソッドを 1 つ書きました。 , 主に、JavaScript API に精通している必要があるように感じます。実際、これらのことは API ドキュメントに含まれています。それは、JavaScript に関数やプロパティがあることを知っているかどうかに依存します。そして、これらのプロパティと関数を統合すると、あなたが欲しいもの。

すべての HTML 要素で使用できる共通の関数:node.appendChild(node)、

すべての HTML 要素で使用できる共通の属性:element.tagName

document オブジェクト よく使用されるメソッド: document.createElement(name)

43c4707103c6cc3650c2aeb71d2b1e8d よく使用される関数: tableObject.insertRow(index)、tableObject.deleteRow(index)

43c4707103c6cc3650c2aeb71d2b1e8d共通プロパティ: tableObject.rows、tableObject.rows.length

868c3f8d39a371013a78a87c30e1b0d8 一般的に使用される関数: tablerowObject.insertCell(index)

868c3f8d39a371013a78a87c30e1b0d8 一般的に使用されるプロパティ: tablerowObject .rowIndex

<style type="text/css">
    table{
        border:1px solid #000;
        border-collapse: collapse;
    }
    th,td{
        border:1px solid #000;
        padding:6px;
    }
</style>
<script type="text/javascript">
    function addRow1(){
        var userInfo = document.getElementById("userInfo");
        var row = document.createElement("tr");
        var td1 = document.createElement("td");
        td1.innerHTML = "李四";
        var td2 = document.createElement("td");
        td2.innerHTML = "102";
        var td3 = document.createElement("td");
        td3.innerHTML = "北海";
        var td4 = document.createElement("td");
        td4.innerHTML = "<a onclick=&#39;delete(this)&#39;>删除</a>";
        row.appendChild(td1);
        row.appendChild(td2);
        row.appendChild(td3);
        row.appendChild(td4);
        userInfo.appendChild(row);              
    }
    function addRow2(){
        var userInfo = document.getElementById("userInfo");
        var rowLength = userInfo.rows.length;
        //新行将被插入index所在行之前。若index等于表中的行数,则新行将被附加到表的末尾。
        //返回一个TableRow,表示新插入的行。
        var tableRow = userInfo.insertRow(rowLength);
        tableRow.innerHTML = "<td>李四</td><td>102</td><td>四海</td><td><a onclick=&#39;deleteRow(this)&#39;>删除</a></td>";
    }
    function addRow3(){
        var userInfo = document.getElementById("userInfo");
        //计算rows.length时会把表头包含在内
        var rowLength = userInfo.rows.length;
        var tableRow = userInfo.insertRow(rowLength);
        //新单元格将被插入当前位于 index 指定位置的表元之前
        //如果 index 等于行中的单元格数,则新单元格被附加在行的末尾。
        var tableCell0 = tableRow.insertCell(0);
        var tableCell1 = tableRow.insertCell(1);
        var tableCell2 = tableRow.insertCell(2);
        var tableCell3 = tableRow.insertCell(3);
        tableCell0.innerHTML = "李四";
        tableCell1.innerHTML = "103";
        tableCell2.innerHTML = "黑海";
        tableCell3.innerHTML = "<a onclick=&#39;deleteRow(this)&#39;>删除</a>";
    }
    //不能传初始化时当前元素所在行的rowIndex,因为删除操作之后当前元素所在行的rowIndex会发送变化
    function deleteRow(_this){
        var userInfo = document.getElementById("userInfo");
        var rowIndex = getTrIndex(_this);
        //deleteRow() 方法用于从表格删除指定位置的行
        //参数 index 指定了要删除的行在表中的位置
        userInfo.deleteRow(rowIndex);
    }
    function getTrIndex(element){
        if(element.tagName.toLowerCase() == "tr"){
            //rowIndex属性返回某一行在表格的行集合中的位置(row index)
            return element.rowIndex;
        }else{
            return getTrIndex(element.parentNode);
        }
    }
</script>

推奨学習: 「JavaScript 上級チュートリアル

以上がJavaScriptでテーブルから行を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。