AppendChild无法使用textcontent(javascript)

时间:2018-07-05 06:21:05

标签: javascript html

我正在使用createElement创建一个Div,然后使用createElement在该div中创建强标签,并将其添加为文本并将其附加在firstDiv(我之前创建的)内,然后将内容分配给主Div(先前创建的div)。但是它仅显示文本内容,而没有显示我创建的强大标签。

请帮助我我错了。这是

附加的图片:

enter image description here

2 个答案:

答案 0 :(得分:0)

textContent替换元素中的所有内容。

http://jsfiddle.net/2nmL7v5b/6/

您必须要做类似的事情

var infoDiv = document.createElement("div");
infoDiv.setAttribute("class", "text-block");
var bio = document.createElement("strong");
bio.textContent = "Bio";
infoDiv.appendChild(bio);
var spanElem = document.createElement("div");
spanElem.textContent = "Full";
infoDiv.appendChild(spanElem)


document.getElementsByTagName("body")[0].appendChild(infoDiv)
<body>
</body>

或者,如果您不想使用span标签,也可以使用innerHTML

http://jsfiddle.net/2nmL7v5b/11/

var infoDiv = document.createElement("div");
infoDiv.setAttribute("class", "text-block");
var bio = document.createElement("strong");
bio.textContent = "Bio";
infoDiv.appendChild(bio);

infoDiv.innerHTML += "Full";

document.getElementsByTagName("body")[0].appendChild(infoDiv)
<body>
</body>

答案 1 :(得分:0)

根据需要,应在主div中使用“ createTextNode”而不是“ textContent”。

var infoDiv21 = document.createElement('div');
infoDiv21.setAttribute('class', 'text-block-19');
var bio = document.createElement('strong');
bio.textContent = "Bio";
infoDiv21.appendChild(bio);
var textnode = document.createTextNode("Rajat Full Bio"); // Create a text node
infoDiv21.appendChild(textnode);

(建议:在使用前,请详细浏览'createTextNode'。)