Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的CreateTextNode附加html内容_Javascript_Html - Fatal编程技术网

javascript中的CreateTextNode附加html内容

javascript中的CreateTextNode附加html内容,javascript,html,Javascript,Html,我正在尝试使用append child将html格式的块附加到现有的div。但是我看到html代码是附加的,而不是格式化的html。有没有关于如何使用appendChild和createTextNode添加html设计而不是html代码的指针 你好测试 剧本 var ele = document.getElementById("currentElement"); var newHtml = "<div><h3>hello test continued</h3&

我正在尝试使用append child将html格式的块附加到现有的div。但是我看到html代码是附加的,而不是格式化的html。有没有关于如何使用appendChild和createTextNode添加html设计而不是html代码的指针


你好测试
剧本

var ele = document.getElementById("currentElement");
var newHtml = "<div><h3>hello test continued</h3></div>";
ele.appendChild(document.createTextNode(newHtml));
var ele=document.getElementById(“currentElement”);
var newHtml=“hello测试继续”;
ele.appendChild(document.createTextNode(newHtml));
为什么不直接使用?您可以使用
ele.innerHTML=newHtml
覆盖内容,或使用
ele.innerHTML+=newHtml
添加到现有内容

var ele=document.getElementById(“currentElement”);
var newHtml=“hello测试继续”;
ele.innerHTML+=newHtml

你好测试
为什么不直接使用?您可以使用
ele.innerHTML=newHtml
覆盖内容,或使用
ele.innerHTML+=newHtml
添加到现有内容

var ele=document.getElementById(“currentElement”);
var newHtml=“hello测试继续”;
ele.innerHTML+=newHtml

你好测试

如果要保留事件侦听器,有两个选项

//示例事件侦听器
document.querySelector(“#currentElement h2”).addEventListener('click',()=>console.log('click works');
//代码从这里开始
var ele=document.getElementById(“currentElement”);
var div=document.createElement('div'),
h3=document.createElement('h3'),
txt=document.createTextNode(“hello测试继续”);
儿童组(h3);
h3.appendChild(txt);
附属儿童(分部)等

你好测试

如果要保留事件侦听器,有两个选项

//示例事件侦听器
document.querySelector(“#currentElement h2”).addEventListener('click',()=>console.log('click works');
//代码从这里开始
var ele=document.getElementById(“currentElement”);
var div=document.createElement('div'),
h3=document.createElement('h3'),
txt=document.createTextNode(“hello测试继续”);
儿童组(h3);
h3.appendChild(txt);
附属儿童(分部)等

你好测试

如果您想通过appendChild执行此操作,请按以下方式执行:

var newHtml = "<div><h3>hello test continued</h3></div>";
var child = document.createElement('div');
child.innerHTML = newHtml;
child = child.firstChild;
document.getElementById('currentElement').appendChild(child);
var newHtml=“hello测试继续”;
var child=document.createElement('div');
child.innerHTML=newHtml;
child=child.firstChild;
document.getElementById('currentElement').appendChild(child);

如果您想通过appendChild执行此操作,请按以下方式执行:

var newHtml = "<div><h3>hello test continued</h3></div>";
var child = document.createElement('div');
child.innerHTML = newHtml;
child = child.firstChild;
document.getElementById('currentElement').appendChild(child);
var newHtml=“hello测试继续”;
var child=document.createElement('div');
child.innerHTML=newHtml;
child=child.firstChild;
document.getElementById('currentElement').appendChild(child);

是,因为文本节点是文本,而不是HTML
ele.innerHTML+=newHTML
或者,一个更好的选择
ele.insertAdjacentHTML('beforeend',newHTML)
就是您想要的是,因为文本节点是文本,而不是HTML
ele.innerHTML+=newHTML
或者,一个更好的选择
ele.insertAdjacentHTML('beforeend',newHTML)
是您想要的,它将取代当前的html:p(注释预编辑)(如果您想添加它,
insertAdjacentHTML
更有效:p)@JaromandaX--更新以涵盖替换和添加:)这将删除现有的事件侦听器。任何带有appendChild?insertAdjacentHTML的选项都将替换当前的html:p(注释预编辑)(如果您想添加它,
insertAdjacentHTML
的性能更高:p)@JaromandaX--已更新以涵盖替换和添加:),这将删除现有的事件侦听器。任何带有appendChild?insertAdjacentHTML的选项