我想在某个区域动态打印一个字符串(非常量)(例如div result
)。然后我使用以下代码:
<!DOCTYPE html>
<html>
<body>
<div id="result"></div>
<script>
var elt = document.createElement("span");
elt.innerHTML = "=A2<C2";
document.querySelector("#result").appendChild(elt);
</script>
</body>
</html>
问题是,如果我要打印的字符串包含<
,它会解释该字符串并且不会忠实地打印<
。例如,上面的代码打印=A2
。
我看到一些主题提议用<
+空格替换<
。但我不喜欢插入的空间。另外,我不知道是否还有其他特殊字符会被解释。
所以有人知道任何忠实打印字符串的一般解决方案吗?
PS:JSBin
答案 0 :(得分:1)
绝对不要使用innerHTML
插入文字;只以这种方式插入HTML。插入文本有点冗长,但并不太难:
elt.appendChild(document.createTextNode("=A2<C2"));
答案 1 :(得分:1)
您可以将cgi.py
替换为.textContent
.innerHTML