【JavaScript】Js动态生成表格&填入内容&赋予表格不同颜色

该文章展示了一段JavaScript代码,它在页面加载完成后动态创建一个表格,表格包含了预定义的数据,每个单元格有不同的边框样式。代码使用了嵌套数组来存储数据,并通过createElement方法创建DOM元素来构建表格结构。
摘要由CSDN通过智能技术生成
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8"/>
	<title></title>
	<style>
		table {border-collapse:collapse} 
		.td0
		{
			width:80px;
			height:20px;
			border:2px solid blue;
		}
		.td1
		{
			width:80px;
			height:20px;
			border:2px dashed green;
		}
		.td2
		{
			width:80px;
			height:20px;
			border:2px solid purple;
		}
		.td3
		{
			width:80px;
			height:20px;
			border:2px dashed #4B4193;
		}
	</style>
	<script>
		//table:表格元素;tr:表格行元素;td:单元格元素
		//A.appendChild(B)将B元素添加进A元素中
		//window.onload()表示等页面所有内容都加载完再执行该函数
		//定义嵌套数组,将该数组中的内容填入生成列表
		var arr = [["姓名","语文","数学","英语"],["张三",100,60,80],["李四",90,70,85],["王五",78,69,81]]
		window.onload = function () 
		{
			var oTable = document.createElement("table"); //创建table元素
			for (var i = 0;i < 4;i++) //生成四行
			{
				var oTr = document.createElement("tr");
				for (var j = 0;j < 4;j++) //生成四列
				{
					var oTd = document.createElement("td");
					oTd.className = "td"+j; //定义每一个单元格的class
					
					var a = document.createTextNode(arr[i][j]) //将嵌套数组中的元素填入生成的表格
					oTd.appendChild(a)
					
					oTr.appendChild(oTd); //将oTd元素添加进入oTr元素中
				}
				oTable.appendChild(oTr);
			}
			document.body.appendChild(oTable);
		}
	</script>
</head>
<body>
</body>
</html>

最终效果

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
可以使用 JavaScript动态生成表格,步骤如下: 1. 创建一个空的表格元素。 ```html <table id="myTable"></table> ``` 2. 获取要生成数据。 ```javascript const data = [ { name: '张三', age: 18, gender: '男' }, { name: '李四', age: 20, gender: '女' }, { name: '王五', age: 22, gender: '男' } ]; ``` 3. 创建表头。 ```javascript const table = document.getElementById('myTable'); const thead = table.createTHead(); const row = thead.insertRow(); const headers = ['姓名', '年龄', '性别']; for (let header of headers) { const th = document.createElement('th'); const text = document.createTextNode(header); th.appendChild(text); row.appendChild(th); } ``` 4. 创建表格行。 ```javascript const tbody = table.createTBody(); for (let person of data) { const row = tbody.insertRow(); const values = Object.values(person); for (let value of values) { const cell = row.insertCell(); const text = document.createTextNode(value); cell.appendChild(text); } } ``` 完整的代码如下: ```html <table id="myTable"></table> <script> const data = [ { name: '张三', age: 18, gender: '男' }, { name: '李四', age: 20, gender: '女' }, { name: '王五', age: 22, gender: '男' } ]; const table = document.getElementById('myTable'); const thead = table.createTHead(); const row = thead.insertRow(); const headers = ['姓名', '年龄', '性别']; for (let header of headers) { const th = document.createElement('th'); const text = document.createTextNode(header); th.appendChild(text); row.appendChild(th); } const tbody = table.createTBody(); for (let person of data) { const row = tbody.insertRow(); const values = Object.values(person); for (let value of values) { const cell = row.insertCell(); const text = document.createTextNode(value); cell.appendChild(text); } } </script> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

煮雨小筑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值