未捕获的类型错误对象没有方法'insertafter' [重复]
Posted
技术标签:
【中文标题】未捕获的类型错误对象没有方法\'insertafter\' [重复]【英文标题】:uncaught typeerror object has no method 'insertafter' [duplicate]未捕获的类型错误对象没有方法'insertafter' [重复] 【发布时间】:2014-01-01 02:41:22 【问题描述】:当我单击按钮时,我试图在 div
和 div
元素内添加按钮。
以下JS
代码:
function doThis()
var btn= document.createElement("input");
btn.type="submit";
btn.value="button";
var child=document.getElementById("child");
var submit=document.getElementById("submit");
child.insertAfter(btn, submit);
和html
标记:
<div id="parent" class="parent">
<div id="child" class="child">
<input type="text" class="text"/>
<input id="submit" type="submit" onclick="doThis()"/>
</div>
<div>
在控制台中我有错误消息:Uncaught TypeError: Object #<HTMLDivElement> has no method insertAftert
。如何解决这个问题?JSFIDDLE
【问题讨论】:
你可以使用child.appendChild(btn);
jsfiddle.net/BYwz9/2
【参考方案1】:
没有insertAfter,改用insertBefore。
submit.parentNode.insertBefore(btn, submit.nextSibling);
如果 submit 是最后一个 Child,则 submit.nextSibling 为 null,insertBefore 只会将其附加到 parentNode。
http://jsfiddle.net/rooseve/BYwz9/1/
【讨论】:
以上是关于未捕获的类型错误对象没有方法'insertafter' [重复]的主要内容,如果未能解决你的问题,请参考以下文章
未捕获的类型错误:对象 [object Object] 没有方法“Jcrop”
未捕获的类型错误:对象 #<Object> 没有方法“movingBoxes”