2016-10-06 5 views
2

동적으로 생성 된 div에 일부 체크 박스를 추가하고 div를 정적 div에 추가하려고합니다.Javascript 동적 div에 요소 추가

document.getElementById(newDiv).appendChild(checkbox)); 

코드

function func(staticDiv){ 
    var newDiv = document.createElement("DIV"); 
    var checkbox = createCheckbox(); 

    document.getElementById(newDiv).appendChild(checkbox); 
    document.getElementById(staticDiv).appendChild(newDiv); 

}

function createCheckbox() { 
    var checkbox = document.createElement("INPUT"); 
    checkbox.setAttribute("type", "checkbox"); 
    checkbox.setAttribute("name", "checkbox"); 
    return checkbox; 
} 
+0

"document.getElementById()"는 ID로 항목을 선택하기위한 것입니다. "newDiv"는 ID가 아닙니다. DOM 요소에 대한 참조입니다. – NachoDawg

+0

'staticDiv'는 정적 div의 ID 또는 div에 대한 참조를 가진 문자열입니까? – Jamiec

답변

1

당신의 전체 코드입니다 코드

function func(staticDiv){ 
    var newDiv = document.createElement("DIV"); 
    var checkbox = createCheckbox(); 

    newDiv.appendChild(checkbox); 
    document.getElementById(staticDiv).appendChild(newDiv); 
} 

function createCheckbox() { 
    var checkbox = document.createElement("INPUT"); 
    checkbox.setAttribute("type", "checkbox"); 
    checkbox.setAttribute("name", "checkbox"); 
    return checkbox; 
} 

it 당신이 새로 만든 div 위트 ID를 얻으려고 시도했기 때문에 발생했습니다. 그러나 div hasnt ID를 써야합니다.

+1

감사합니다. 작동했습니다! ... 내 업보 – Joseph

0

문제 :이 라인이 오류가

TypeError: Cannot read property 'appendChild' of null

:하지만 난이 오류를 받고 있어요 그것입니다. 방금 생성 한 newDiv 요소를 getElementById 메서드에 전달합니다.이 메서드는 문자열을 사용해야합니다. 당신은 아마 원하는

그냥 할 : newDiv 이후

function func(staticDiv){ 
    var newDiv = document.createElement("DIV"); 
    var checkbox = createCheckbox(); 

    newDiv.appendChild(checkbox); 
    document.getElementById(staticDiv).appendChild(newDiv); 
} 
0

실제 요소입니다, 당신은 단순히이 작업을 수행 할 수 있습니다

다음
newDiv.appendChild(checkbox); 
staticDiv.appendChild(newDiv); 
관련 문제