我在golang中有一个模板,其中有一个看起来像这样的字符串:
<some_html> {{ .SomeOtherHTML }} </some_html>
我期望输出是这样的:
<some_html> <the_other_html/> </some_html>
但是我看到的是这样的:
<some_html> <the_other_html/< </some_html>
我还尝试插入一些JSON,但golang会转义字符并"
在不应该出现的地方添加类似内容。
如何在golang中插入HTML模板而不发生这种情况?
您应该将变量作为a template.HTML
而不是作为a 传递string
:
tpl := template.Must(template.New("main").Parse(`{{define "T"}}{{.Html}}{{.String}}{{end}}`))
tplVars := map[string]interface{} {
"Html": template.HTML("<p>Paragraph</p>"),
"String": "<p>Paragraph</p>",
}
tpl.ExecuteTemplate(os.Stdout, "T", tplVars)
//OUTPUT: <p>Paragraph</p><p>Paragraph</p>
https://play.golang.org/p/QKKpQJ7gIs
如您所见,以a传递的变量template.HTML
不会被转义,而是以a传递的变量是转义的string
。
我正在尝试插入一个HTML块到一个div。我想看看简单的JavaScript方式是否比使用jQuery更快。不幸的是,我忘了怎么用‘老办法’做这件事。:p 伙计们,我做错了什么? 编辑: 有人问jquery和普通js哪个更快,所以我编写了一个测试: http://jsperf.com/html-insertion-js-vs-jQuery 纯js快10%
问题内容: 我正在按照本教程进行学习: golang教程- Wiki, 并且我设法使除“其他任务”部分中的最后一点之外的所有内容都起作用。我对本教程的实现: html / template引擎会按预期方式打印定位标记,但会使用html实体对其进行转义。我还没有找到合适的方法。 问题答案: 使用template.HTML将正文标记为安全HTML。 以下函数将正文转换为HTML。 使用以下方式渲染页面
问题内容: 当我尝试粘贴到HTML文本文件中时,我总是被踢出外壳。如何才能做到这一点?我首先需要使用一些JavaScript对其进行编码吗? 例: 编辑 我只在HTML中放入单引号,然后将整个内容都用双引号引起来,但仍然没有好处。外壳错误: 问题答案: 您需要删除或编码字符串中的控制字符。 例如,将您的文本粘贴到此处,然后编码为UTF-8 ECMAScript(表示javascript字符串)。
问题内容: 有什么方法可以将HTML模板插入到现有DOMNode中,而无需对内容进行编码? 我试图做到这一点: 输出几乎相同,唯一的区别是第一个代码会将其包装在div中。我试图从字符串加载HTML,但是我不知道如何将其主体内容附加到另一个DOMDocument中。 在javascript中,此过程似乎非常简单明显。 问题答案: 它与另一个DOMDocument一起用于解析HTML代码。但是您需要先
问题内容: 我想将Follium Map插入到Jinja模板中。 运行 template / index.html -Flask的Jinja模板 我的网站显示当前行: 但是我需要在此div块中生成方法follium_map.save(’map.html’)的地图。 我怎样才能做到这一点? 问题答案: 你可以使用来保存生成的。然后,你可以使用jinja2来。如所示将生成的html包裹在div标签中时
问题内容: 我目前正在开发一个网站,我需要根据用户执行的操作来动态加载页面。 示例:如果用户单击“设置”按钮,则ajax函数将从外部页面加载该代码,并将其放入带有标签“设置”的div中。 这是我用来发出Ajax请求的代码: 这是第一个代码片段将ajax结果放入的位置: 该代码是从此处的函数调用的: 这是ajax函数将放入div 的html : 我想知道是否有一种方法也可以执行ajax函数返回的ja