doushi9474 2019-05-28 18:21
浏览 61
已采纳

如何使用Go模板在表格中生成超链接

I want to generate an html table which includes some hyperlink strings in one table cell. e.g,

<a href="http://logd/logs/2800643/">2800643</a> 
<a href="http://logd/logs/2800795/">2800795</a> 
<a href="http://logd/logs/2801109/">2801109</a> 

I've defined one template which can handle the table very well except this hyperlink thing.

{{ range . }}
<tr>
<td>{{ .Name }}</td>
<td>{{ .Logs }}</td>
</tr>
{{ end }}

Here I want to have Logs to be hyperlinked. If I pass a formatted string into Logs here, < > will be parsed like below:

&lt;a href=&#34;http://logd/logs/2801103/&#34;&gt;2801103&lt;/a&gt

Based on the information I learned from go website, looks like I need to define another template embedded into this one. Suppose it's to replace {{ .Logs }} here. Like:

{{ range . }}
<a href="http://logd/logs/{{.LogID}}/">{{.LogID}}</a>
{{ end }}

Wonder is there any example available ? Thanks

  • 写回答

1条回答 默认 最新

  • doudiewen9435 2019-05-28 18:34
    关注

    There exist especially for html an html-template which uses type html:

    HTML encapsulates a known safe HTML document fragment.

    That means:

    Based on the information I learned from go website, looks like I need to define another template embedded into this one. Suppose it's to replace {{ .Logs }} here.

    Instead of using string, use type html in your struct.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?