2012-12-26 2 views
2
<textarea name="widget-generalcode" cols="50" rows="13" id="widget-generalcode"></textarea> 

내가 코드를 실행하는 자바 스크립트Error TypeError : 자바 스크립트를 사용하여 innerHTML 텍스트를 추가 할 때 document.getElementById (...)가 null입니까?

<script> 
document.getElementById('widget-generalcode').innnerHTML = 'test'; 
</script> 

, 오류 TypeError: document.getElementById(...) is null, 어떻게 그것을 해결하기 위해?

+0

2

고려해야 당신이 자바 스크립트 구문을 두는 곳. 원하는 결과에 영향을줍니다. 파이어 폭스에서 Firebug와 같은 웹 개발 도구를 사용해야합니다 (F12 키 누름) 자바 스크립트 코드를 디버그하는 데 도움이되며 타임 라인 기능을 사용하여 HTML/자바 스크립트의 어느 부분을 많은 "자원"을 소비했는지 탐지 할 수 있습니다 . 이 정보가 유용합니다.

0

당신이 당신의 페이지에 렌더링되기 전에 몸 태그 palce의 온로드 = "호출에 지금 그 요소가 너무

<script> 
    function call() 
    { 
    document.getElementById('widget-generalcode').value = 'test'; 
    } 
</script> 

아래와 같은 기능의 코드를 작성 얻을 결코 있도록 요소에 액세스하려고

<body onload ="call()" > 

</body> 
3

될 수 있습니다 작동합니다 아래에 주어진() "당신은 pageload에 넣어해야합니다

<script type="text/javascript"> 
    window.onload = function(){ 
     document.getElementById('widget-generalcode').innerHTML = 'test'; 
    }; 
</script> 
0

나는 새 2 유래 죄송

asp.net Actualy 시작에서

내 ID하지만 클라이언트 측에 너무 통해 UR 스크립트 변화 ID 양식 위젯 - generalcode에 ctl00_dmrcontent_Startup 로 표시 될 것이다 클라이언트 측

<div id="Startup" runat="server"> 
에서 어떤 디스플레이
0

이로 인해 많은 슬픔이 발생했습니다. "onLoad"(모든 PHP가 실행되고 HTML로 변환 된 후 발생하는)의 실행 순서를 이해하고, (onLoad 이전에 발생하는) url 매개 변수를 구문 분석 한 후 js 명령을 실행하는 문제입니다.

0

javascript 기능이 브라우저에서 렌더링 된 html 페이지보다 먼저 실행되었습니다. 따라서 코드가 실행될 때 id = "widget-generalcode"요소는 존재하지 않습니다.

의 javscript 파일 상단에있는 window.unload = functionName을 괄호()없이 사용하십시오. 이렇게하면 html 페이지가로드 된 후 브라우저에 함수 이 실행됩니다. 이 방법은 html 요소가 존재할 때 함수가 실행될 때 javascript가 실행될 수 있습니다.

관련 문제