javascript innerHTML问题

时间:2009-07-08 11:28:38

标签: javascript

使用obj.innerHTML = "abcxyz <abcxyz@ttt.com>"获取输出:abcxyz由于尖括号(&lt;&gt;)而忽略了其余部分。 所以如何实现同样的目标。

提前致谢

5 个答案:

答案 0 :(得分:10)

实际上,内容仍然存在,但浏览器将其解释为未知标记,即它不显示任何内容。查看生成的页面源(在FF中,例如,标记所有文本并使用上下文菜单中的“选择源”)。

尝试引用括号:

obj.innerHTML = "abcxyz <abcxyz@ttt.com>".replace (/</g, "&lt;")

然而,这将取代所有 <。如果你想嵌入其他HTML,你必须跟踪你已编码的内容和不编码的内容。

干杯,

答案 1 :(得分:2)

HTML对您的字符串进行编码或使用HTML实体,例如&lt;

答案 2 :(得分:1)

在HTML中,文字“&lt;”表示为“&amp; lt;”和文字“&gt;”表示为“&amp; gt;”。请参阅HTML 4.01 section 5.3.2

答案 3 :(得分:1)

我会试试这个: unescape('abcxyz%3Cabc ...

答案 4 :(得分:0)

你需要逃避&lt;和&gt;在字符串中。