2013-07-23 4 views
0

자바 스크립트로 DOM 버튼 객체를 동적으로 만들려고합니다. 그것은 완벽하게 창조되고 있습니다. 하지만 내 문제는 단추 중 하나를 다른 자바 스크립트 함수를 할당하려고하면 다른 스크립트는 단추를 만들 때 자체를 트리거합니다. popupInsertonClick 이벤트를 기다리지 않습니다. 즉시 열립니다. 그리고 여기에 내 코드가있다. 어떻게 해결할 수 있을까요?자바 스크립트 함수가 바로 트리거

for (var i=0; i<5; i++){ 
            var tr = document.createElement('Tr'); 
            tr.colSpan = '8'; 
            tableBody.appendChild(tr); 


            for (var j=0; j<8; j++){ 

             var td = document.createElement('TD'); 

             if(j>4){ 
             var button = document.createElement('button'); 
             if(j==5) 
              button.innerHTML = "Güncelle"; 
             else if (j==6) 
              button.innerHTML = "Sil"; 
             else{ 
              button.innerHTML = "Düzenle"; 
              button.onClick = popupInsert(); 
             } 
             button.width = '60'; 
             td.appendChild(button); 
             tr.appendChild(td); 
             } 
             else if (j<5) 
              { 

             td.appendChild(document.createTextNode("Cell " + i + "," + j)); 
             tr.appendChild(td); 
              } 
            } 
           } 

답변

3

변경

button.onClick = popupInsert(); 

button.onclick = popupInsert; 

에 대신 함수의 함수의 결과를 할당하고 당신은 오타를했다 : 그것은 onclick하지 onClick입니다.

+0

정말로 감사합니다. – developerCoder

+1

사이드 노트 : 들여 쓰기를 청소해야합니다. 지저분한 큰 코드는 관리 할 수 ​​없습니다. –

관련 문제