2014-01-06 39 views
8

如果我想添加一个ascii符号形式js到某个节点的某个地方? 尝试作为一个TextNode,但它并没有解析它作为代码:如何使用createTextNode插入HTML实体?

var dropdownTriggerText = document.createTextNode('blabla ∧'); 
+1

' '和'&'等等不是ASCII码,它们是HTML实体。 –

+0

你的意思是'&'? –

回答

13

您不能创建HTML实体节点。您的替代方案将使用统一码值

var dropdownTriggerText = document.createTextNode('blabla \u0026'); 

或设置innerHTML的元素。您当然可以直接输入& ...

+0

如果已经有一个DIV元素,并且想要插入包括HTML实体的文本,那么document.createHtmlNode()函数将会很好。例如:myHtmlNode = document.createHtmlNode('ABC   DEF'); myParentNode.appendChild(myHtmlNode);但我想使用unicode值建议仍然是最接近可能的选项。 – RhinoDevel

8

createTextNode应该采取任何文本输入,并将其插入到DOM中完全一样的。这使得不可能插入例如HTML元素和HTML 实体。这实际上是一个功能,所以你不需要先摆脱它们。相反,您只需在DOM上操作即可插入文本节点。

所以,实际上你可以只使用直接&符号:

var dropdownTriggerText = document.createTextNode('blabla &');