golang 动态生成表头及数据

golang的struct不支持界面展示的嵌套循环,所以采用map数据结构来存储数据。直接看代码效果。 用的beego框架 服务端代码: `

func(this*TableController)Get(){
this.Data["Thead"]=[]string{"#","名称","年龄"}//表头数据结构
this.Data["Tbody"]=[]string{"Id","Name","Age"}//对应字段值
personMap:=make(map[string]string)
personMap["Id"]="1"
personMap["Name"]="lisi"
personMap["Age"]="25"
personMap1:=make(map[string]string)
personMap1["Id"]="2"
personMap1["Name"]="zhangsan"
personMap1["Age"]="28"
person:=make(map[int64]map[string]string)
person[0]=personMap
person[1]=personMap1
fmt.Println(person)
this.Data["Person"]=person
this.TplNames="table.tpl"
}

` 前端测试代码

<html>
<head>
	<title>table</title>
</head>
<body>
	<tableboder="1pxsolidblack">
		{{range$k,$v:=.Thead}}
		<th>{{$v}}</th>
		{{end}}
		{{range$k,$person:=.Person}}
		<tr>
			{{range$.Tbody}}
				<td>{{index$person.}}</td>
			{{end}}
		</tr>
		{{end}}
	</table>
</body>
</html>


最后效果

# 名称 年龄

1 lisi 25

2 zhangsan 28

相关文章

1、Golang指针 在介绍Golang指针隐式间接引用前,先简单说下...
1、概述 1.1&#160;Protocol buffers定义 Protocol buffe...
判断文件是否存在,需要用到"os"包中的两个函数: os.Stat(...
1、编译环境 OS :Loongnix-Server Linux release 8.3 CPU指...
1、概述 Golang是一种强类型语言,虽然在代码中经常看到i:=1...
1、概述 在《Golang常用语法糖》这篇博文中我们讲解Golang中...