在以下代码中,CreateTextNode
函数不使用text
变量中包含的HTML标记。相反,它会在结果中显示原始HTML文本。
var i,text;
for(i=0;i<p.length;i++){
text+=p[i].name+"<br>"+p[i].id+"<br>"+p[i].image;
//text contain embedded HTML tag.
}
var para=document.createElement("p");
var node=document.createTextNode(text);
para.appendChild(node);
var element=document.getElementById("one");
element.appendChild(para);
答案 0 :(得分:0)
如果您希望将文本视为HTML并进行解析,请使用innerHTML
属性,而不是文本节点:
var para=document.createElement("p");
para.innerHTML = text;
或者,您可以使用insertAdjacentHTML
:
var para=document.createElement("p");
para.insertAdjacentHTML("beforeend", text);
...但是在这种情况下设置innerHTML
可能更简单,因为你刚刚创建了元素并且你知道它是空的。