动态生成表格

284 阅读1分钟

代码:

<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
	<style>
		table {
			width: 500px;
			margin: 100px auto;
			border-collapse: collapse;
			text-align: center;
		}

		td,
		th {
			border: 1px solid #333;
		}

		thead tr {
			height: 40px;
			background-color: #ccc;
		}
	</style>
</head>

<body>
	<table cellspacing="0">
		<thead>
			<tr>
				<th>姓名</th>
				<th>科目</th>
				<th>成绩</th>
				<th>操作</th>
			</tr>
		</thead>
		<tbody>

		</tbody>
	</table>
</body>

</html>
<script>
	// 数据
	var datas = [{
		name: "xiaoming",
		subject: "java",
		score: 100
	}, {
		name: "qq",
		subject: "java",
		score: 89
	}, {
		name: "12",
		subject: "java",
		score: 98
	}, {
		name: "we",
		subject: "java",
		score: 86
	}];
	// 往tbody里面创建行
	var tbody = document.querySelector('tbody')
	for (var i = 0; i < datas.length; i++) {//hang
		// 创建行
		var tr = document.createElement('tr')
		tbody.appendChild(tr)
		//创建td
		for (var k in datas[i]) {//lie 循环对象
			var td = document.createElement('td')
			// 对象里的属性值给td
			td.innerHTML = datas[i][k]
			tr.appendChild(td);
		}
		// 创建 删除 单元格
		var td = document.createElement('td')
		td.innerHTML = '<a href="javascript:;">删除</a>'
		tr.appendChild(td)
	}
	// 删除操作
	var as = document.querySelectorAll('a');
	for (var i = 0; i < as.length; i++) {
		as[i].onclick = function () {
			// 点击a删除 当前行
			tbody.removeChild(this.parentNode.parentNode)
		}
	}
</script>