2016-08-08 2 views
0

EDITED :이 문제에 대해 수십 개의 기사를 거의 확인했지만이 코드에서 문제를 찾을 수 없습니다. 아래 줄은 null을 반환하고, 비록 내가 위에서 만들고 추가 한 특정 요소를 반환 할 것으로 기대한다.getElementById (...)가 예기치 않게 null을 반환합니다.

element2 = document.createElement("button"); 
 
    element2.innerHTML = "-"; 
 
    element2.text = rowCounter; 
 
    element2.style.backgroundColor = 'white'; 
 
    element2.id = "kuerzer"+rowCounter; //rowCounter is an iterator variable 
 
    ell2.appendChild(element2); 
 
    console.log(document.getElementById(element2.id)); //returns null

그러나, 나는 지금이 같은 다른 기능이 요소를 찾기 위해 노력하고 있어요 :

function structureGantData(){ 
 
     var gantData = [[]]; 
 
     for(i=0; i<document.getElementById("myTable").rows.length; i++){ 
 
     console.log("schleife"); 
 
     gantData[i][0] = document.getElementById("kuerzer",(i+1)).text; //ISSUE

이 사람이 나를 도울 수 있을까요? :-)

고마워요!

파비안

답변

0

나는 document.getElementById("kuerzer", i + 1)이 아닌 document.getElementById("kuerzer" + (i + 1))structureGantData으로 불러야한다고 생각합니다.

+0

게시물 주셔서 감사합니다. 이제 gantData [i] [0] = document.getElementById ("kuerzer"+ (i + 1))를 호출합니다. jstut.html : 272 Uncaught TypeError : 정의되지 않은 '0'속성을 설정할 수 없습니다. –

+0

은'gantData [i]'가 정의되지 않았다고 제안합니다; 그 배열을 초기화했는지 확인하십시오 – oldrinb

+0

맞습니다! 너무 고마워! : -) + –

4

당신은 DOM에 생성 된 요소를 추가하지 않은, 그래서 거기를 찾을 수 없습니다.

(또는 다른 유사한) 방법을 사용하여 어딘가에 추가 할 수 있습니다.

관련 문제