자바스크립트의 온클릭 이벤트 질문입니다.
조회수 8500회
노드 js 책 예제 중 아래와같은 문에서
onload는 alert창이 되는데
버튼 이벤트가 들어가지 않네요 ㅜ 로그에도 없고요. 콘솔창에도 안뜨고요..
버튼을 클릭할때
개발자 콘솔창에
Uncaught TypeError: Cannot read property 'length' of undefined naver_dic.js:1046
이런 오류가 발생합니다.
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="/socket.io/socket.io.js"></script>
<script>
window.onload = function(){
alert("onload");
var socket = io.connect();
socket.on('smart',function(data){
alert(data);
});
document.getElementById('button').onClick = function(){
alert('button click');
};
};
</script>
</head>
<body>
<input type="text" id="text" />
<input type="button" id="button" name="button" value="echo" />
</body>
</html>
2 답변
-
onClick
https://jsfiddle.net/kuvq32vL/
onclick
https://jsfiddle.net/kuvq32vL/1/
위에 작성하신 코드에서 socket만 주석처리한 샘플 코드예요.
해당 링크에서 보시면 정상 동작하는 것 확인 가능해요.
나중에 추가해주신 오류 메시지 중
naver_dic.js:1046
를 봐도위 코드에는 naver_dic.js 관련 한 정보가 없는것으로 보아
올려주신 코드에는 포함 되어있지 않은 다른 부분이 원인으로 예상되네요.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
-
대소문자 원인으로 보이네요
onClick
대신onclick
으로 수정해보세요~참고:
https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onclick-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력