go doc原文
Marshal的源码
这一行encOpts{escapeHTML: true}),这里的true导致标签被转义。
针对上述问题,有两种解决办法,第一种是替换上述三个tag,第二种是SetEscapeHtml(false);
输出:
function HTMLEncode(html) {
var temp = document.createElement("div")
(temp.textContent != null) ? (temp.textContent = html) : (temp.innerText = html)
var output = temp.innerHTML
temp = null
return output
}
var tagText = "<p><b>123&456</b></p>"
console.log(HTMLEncode(tagText))//<p><b>123&456</b></p>
function HTMLDecode(text) {
var temp = document.createElement("div")
temp.innerHTML = text
var output = temp.innerText || temp.textContent
temp = null
return output
}
var tagText = "<p><b>123&456</b></p>"
var encodeText=HTMLEncode(tagText)
console.log(encodeText) //<p><b>123&456</b></p>
console.log(HTMLDecode(encodeText)) //<p><b>123&456</b></p>