2017-03-09 104 views
0

我需要在我的HTML插入此代码JS:插入HTML DOM中

var1 = "texte1" + "\ntext2" 

我用:

var newPara = document.createElement('h1'); 
var texte = document.createTextNode(var1); 
newPara.appendChild(texte); 
document.body.appendChild(newPara); 

当我修改这个代码,是没有问题的。 但我不能在HTML中插入,因为var1不是TextNode。 (我想找一个没有Jquery的解决方案)。

+1

您的预期结果是什么? –

+2

如果我正确地关注你,你在'var1'中有一个HTML字符串?它并不总是最安全的,但如果你将HTML作为一个字符串,只需使用'newPara.innerHTML = var1' – Phil

+0

这取决于你想要做什么(这应该在问题中解决)。尝试转义var1的内容,如'var1 ='var1 =“texte1”+“\\ ntext2”;' – traktor53

回答

0

我很困惑,所以你试图只插入文本到你创建的元素?或纯JavaScript代码到HTML?如果只是文本,通过标记或id(id最好,更直接的方式,减少错误和元素检查的空间)获取元素,然后将文本插入innerHTML document.GetElementById(“IDValue”)。innerHTML = textValue

更新: 正如您的回复之一所述,在追加元素之前设置innerHTML(如果它不存在)。