gpt4 book ai didi

戈朗 : range through slice and generate HTML table

转载 作者:IT王子 更新时间:2023-10-29 01:59:31 25 4
gpt4 key购买 nike

我有一个字符串 slice ,我想遍历 slice 并创建一个包含值的简单 HTML 表格。这是一些示例代码来说明:

var tmpl = `<td>%s</td>`
names := []string{"john", "jim"}
for _, v := range names {
fmt.Printf(tmpl, v)
}

这会产生:

<td>john</td><td>jim</td>

我想获取返回的内容并创建一个 HTML 表格,或者至少能够将它传递给另一个具有表格结构的 HTML 模板。知道如何做到这一点吗?

最佳答案

下面是创建表格的一种方法:

var tmpl = `<tr><td>%s</td></tr>`
fmt.Printf("<table>")
names := []string{"john", "jim"}
for _, v := range names {
fmt.Printf(tmpl, v)
}
fmt.Printf("</table>")

你也可以使用 html/template 包:

t := template.Must(template.New("").Parse(`<table>{{range .}}<tr><td>{{.}}</td></tr>{{end}}</table>`))
names := []string{"john", "jim"}
if err := t.Execute(os.Stdout, names); err != nil {
log.Fatal(err)
}

我没有足够的果汁来回答上面 OP 评论中的问题,所以我会在这里回答。

一个模板接受一个参数。如果要将多个值传递给模板,请创建一个结构来保存这些值:

 var data struct{ 
A int
Names []string
}{
1,
[]string{"john", "jim"},
}
if err := t.Execute(os.Stdout, &data); err != nil {
log.Fatal(err)
}

在模板中使用 {{.A}} 和 {{.Name}}。

关于戈朗 : range through slice and generate HTML table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29461379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com