2013-12-13 52 views
0

我試圖添加divdiv元素中的按鈕,當我點擊一個按鈕。 以下JS代碼:未捕獲的typeerror對象沒有方法'insertafter'

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

+0

@MelanciaUK謝謝! –

+1

你可以使用'child.appendChild(btn);'http://jsfiddle.net/BYwz9/2/ – rps

回答

1

沒有insertAfter,而是使用insertBefore。

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

如果提交的是最後一個孩子,然後submit.nextSibling是空的,會的insertBefore只是將其追加到parentNode。

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

相關問題