使用JavaScript编写运用DOM实现:使用table进行页面布局,在文本框输入学生姓名,年龄,单机添加按钮实现信息添加功能,单机删除超链接将此条学生信息
时间: 2024-03-25 11:39:21 浏览: 71
从表格中删除。
好的,我明白了你的问题。首先让我们创建一个HTML页面,包含一个表格和文本框、添加按钮和删除超链接。
```html
<!DOCTYPE html>
<html>
<head>
<title>学生信息管理</title>
</head>
<body>
<h1>学生信息管理系统</h1>
<table id="studentTable" border="1">
<tr>
<th>姓名</th>
<th>年龄</th>
<th>操作</th>
</tr>
</table>
<br>
<label for="name">姓名:</label>
<input type="text" id="name">
<label for="age">年龄:</label>
<input type="text" id="age">
<button id="addBtn">添加</button>
<br><br>
<a href="#" id="deleteLink">删除</a>
<script src="script.js"></script>
</body>
</html>
```
然后,我们需要编写JavaScript代码,以便在点击“添加”按钮时将学生信息添加到表格中,并在单击“删除”链接时从表格中删除相应的行。
```javascript
// 获取页面元素
const table = document.getElementById("studentTable");
const nameInput = document.getElementById("name");
const ageInput = document.getElementById("age");
const addBtn = document.getElementById("addBtn");
const deleteLink = document.getElementById("deleteLink");
// 定义添加学生信息函数
function addStudent() {
// 创建新行和单元格
const newRow = table.insertRow();
const nameCell = newRow.insertCell();
const ageCell = newRow.insertCell();
const deleteCell = newRow.insertCell();
// 设置单元格内容
nameCell.innerHTML = nameInput.value;
ageCell.innerHTML = ageInput.value;
deleteCell.innerHTML = '<a href="#">删除</a>';
// 重置输入框
nameInput.value = "";
ageInput.value = "";
}
// 定义删除学生信息函数
function deleteStudent() {
// 获取选中的行
const selectedRow = table.querySelector("tr.selected");
// 如果有选中的行,则删除该行
if (selectedRow) {
selectedRow.remove();
}
}
// 添加按钮的点击事件
addBtn.addEventListener("click", addStudent);
// 删除链接的点击事件
deleteLink.addEventListener("click", deleteStudent);
// 为表格添加点击事件,使单击某一行时可以选中该行
table.addEventListener("click", function(event) {
// 如果单击的是行,则选中该行
if (event.target.tagName === "TD") {
const row = event.target.parentNode;
row.classList.toggle("selected");
}
});
```
这样,我们就实现了使用表格进行页面布局,并通过JavaScript实现添加和删除学生信息的功能。
阅读全文
相关推荐


















