2013-12-13 6 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 Thanks! –

+1

당신은'child.appendChild (btn);'http://jsfiddle.net/BYwz9/2/ '를 사용할 수 있습니다. – rps

답변

1

insertAfter가 없으므로 대신 insertBefore를 사용하십시오.

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

경우 제출이 마지막 자식, 다음 submit.nextSibling가 null, 및에 insertbefore 단지 인 parentNode에 추가합니다.

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

관련 문제