JavaScript操作表格需通过DOM API选取table、tr、td等元素,利用querySelector或rows/cells索引获取内容,用textContent或innerHTML修改,通过insertRow/deleteRow等方法动态增删行,支持遍历处理与条件高亮。
JavaScript 操作表格内容主要通过 DOM API 获取 <table>、<tr>、<td> 等元素,再读取或修改其文本、HTML 或属性。核心在于准确选取目标单元格,并理解表格的层级结构(table > tbody > tr > td/th)。
常用方式是用 querySelector 或遍历 rows 和 cells 集合:
document.querySelector('table tr:nth-child(2) td:nth-child(3)').textContent
table.rows[1].cells[2].textContent(注意:索引从 0 开始,第 2 行第 3 列对应 rows[1] 和 cells[2])<thead> 或 <tbody>,建议明确指定:table.tBodies[0].rows[0].cells[0].innerHTML
修改文本用 textContent,保留 HTML 结构用 innerHTML:
cell.textContent = '新文字' —— 安全,防 XSS,纯文本cell.innerHTML = '<strong>加粗内容</strong>' —— 支持标签,但需确保内容可信table.rows[0].cells[1].textContent = '更新后的列名'
借助 insertRow()、deleteRow()、insertCell() 等原生方法:
立即学习“Java免费学习笔记(深入)”;
table.insertRow().insertCell().textContent = '新数据'
table.insertRow(1).insertCell().textContent = '插在前面'
table.deleteRow(2)
row.innerHTML = '' 或循环调用 deleteCell()
适合统计、高亮、校验等场景,注意跳过表头或忽略空单元格:
for (let row of table.tBodies[0].rows) { for (let cell of row.cells) { /* 处理 cell */ } }
if (!isNaN(cell.textContent.trim())) { sum += Number(cell.textContent) }
if (cell.textContent.includes('警告')) cell.style.backgroundColor = '#ffeb3b'