innerHTML 仅插入 [object HTMLDivElement]

Posted

技术标签:

【中文标题】innerHTML 仅插入 [object HTMLDivElement]【英文标题】:innerHTML inserts only [object HTMLDivElement] 【发布时间】:2016-04-30 04:07:59 【问题描述】:

我想在另一个 html 元素中插入一个 htmlsn-p

我试过这样

html

<div class="box1">
    insert this html element
</div>
<div class="box2">
  into this
</div>

js

var box1 = document.querySelectorAll(".box1")[0]; 
var box2 = document.querySelectorAll(".box2")[0];
console.log(box1);
box2.innerHTML = box1;

但它只插入 [object HTMLDivElement] 不起作用,如果我查看控制台它会输出正确的 html,我做错了什么?

是的,我不想使用 $ 库;)

http://codepen.io/destroy90210/pen/MKQOwy

谢谢 ;)

【问题讨论】:

【参考方案1】:

innerHTML 不插入 DOM 节点,只插入字符串。 请改用appendChild

var box1 = document.querySelector(".box1"); 
var box2 = document.querySelector(".box2");

box2.appendChild( box1 );

【讨论】:

【参考方案2】:

您应该使用appendChild 方法。

box2.appendChild(box1);

【讨论】:

【参考方案3】:

这应该可行:

box2.appendChild(box1);

【讨论】:

以上是关于innerHTML 仅插入 [object HTMLDivElement]的主要内容,如果未能解决你的问题,请参考以下文章

js 替换 innerHTML 仅适用于没有 jQuery

innerHtml 替换插入图片 Javascript

如何从插入到 innerHtml 的单选按钮中获取值

全栈JavaScript之路(十九)HTML5 插入 html标记 ( 一 )innerHTML 与outerHTML

如何在javascript中插入带有innerHTML的php数组

在 div 的 innerHtml 中插入 asp 标签