【问题标题】:uncaught typeerror object has no method 'insertafter' [duplicate]未捕获的类型错误对象没有方法'insertafter' [重复]
【发布时间】:2014-01-01 02:41:22
【问题描述】:

当我单击按钮时,我试图在 divdiv 元素内添加按钮。 以下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 #&lt;HTMLDivElement&gt; has no method insertAftert。如何解决这个问题?JSFIDDLE

【问题讨论】:

标签: javascript html


【解决方案1】:

没有insertAfter,改用insertBefore。

 submit.parentNode.insertBefore(btn, submit.nextSibling);

如果 submit 是最后一个 Child,则 submit.nextSibling 为 null,insertBefore 只会将其附加到 parentNode。

http://jsfiddle.net/rooseve/BYwz9/1/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多