我知道有一个名为 unwrap 的 Jquery 解决方案,但我正在编写“原始”JavaScript。没有 jQuery,我没有找到任何解决方案。
我想像这样删除一个div:
<div><div id="mydiv">Important text here</div></div>
删除“mydiv”后:
<div>Important text here</div>
我该怎么办,我想知道理论。
提前致谢。
我知道有一个名为 unwrap 的 Jquery 解决方案,但我正在编写“原始”JavaScript。没有 jQuery,我没有找到任何解决方案。
我想像这样删除一个div:
<div><div id="mydiv">Important text here</div></div>
删除“mydiv”后:
<div>Important text here</div>
我该怎么办,我想知道理论。
提前致谢。
这条线不应该工作吗
document.getElementById("mydiv").outerHTML = document.getElementById("mydiv").innerHTML
请参阅此JSBin 示例(检查元素)
您需要为此使用removeChild
方法:
var divToRemove = document.getElementById('mydiv').;
var tmpStr = divToRemove.innerHTML;
var parent = divToRemove.parentNode;
parent.removeChild(divToRemove);
parent.inerHTML(tmpStr);
尝试
var el = document.getElementById('mydiv');
var text = el.innerText; //or el.innerHTML
el.parentNode.innerHTML = text;
这将用 mydiv 的内容替换 mydiv 父级的 html。