DEMO_表格操作

在html中的等標籤就可以實現一些簡單的操作。那麼爲什麼還需要用複雜的代碼去實現那。簡單的說,一般的管理系統用動態管理表格還是比較方便的。例如我們的課程設計ttms:添加人員刪除人員修改人員之類的。

記錄一下這次做的表格操作用到一些demo.

  • 表格的動態添加:主要實現表格的動態添加,動態添加表格的一行,當然這個一行是指一行數據

    通過用insertRow()方法實現插入行;通過insertCell()方法實現單元格元素的插入

  • 表格的動態刪除:主要通過實現表格的刪除操作,刪除指定行和刪除表格中所有內容

    通過使用deleteRow(index)方法刪除表格行。index爲參數,表示第幾行,這個參數時從上向下,由0開始數的, 另外有特別需要注意的一點:如果參數不寫,則效果與參數爲0一樣,表示刪除最上面一行 相對應的是,deleteCol(index)方法是刪除單元格

  • 表格的單元行的操作:主要實現表格的鼠標事件。鼠標的移入移出以及鼠標的點擊事件

    通過方法event.srcElement.tagName方法和event.srcElement.parentElement方法實現。 event是觸發事件的源對象,而srcElement則就是選中對象,而parentElement則是選中對象的父層對象; 以當前的例子來簡單解釋的話,就是說,鼠標放上table,從而激活了事件getrow(this), 當鼠標放在任一單元格之上時,它的srcElement都是td,它的parentElement也就是tr一行了,則找到一行的對象了

  • 表格的動態生成:通過表格的動態添加實現。利用在上面提到的insertRow()實現。

    在html中我們只給出body中的代碼,在其中只需要創建一個div,對div進行表格的插入

<body>
    <div id = "create_table"></div>
<body>

js代碼中主要的就是實現表格的生成。

  • createElement()方法實現html中標籤的動態創建。
  • appendChild()方法實現將創建的標籤添加給需要對應的父節點
  • setAttribute(“class”,”value”)方法實現給對應的標籤添加屬性。class爲屬性名,value爲對應的屬性。
    window.onload = function create_table() {
        let table = document.createElement('table');
            for (let i = 1; i <=4; i++) {
                 let row = table.insertRow();
                 for (let j = 1; j <= 2; j++) {
                      let cell = row.insertCell();
                      cell.innerHTML = "這裏是"+i +"行" +',' + j+"列";
                     }
                 }
        document.getElementById('createTable').appendChild(table);
        table.setAttribute('border', '1');
    }

github代碼地址:https://github.com/special-wen/demo/tree/master/demo_table

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章