HTML DOM의 InputEvent data 속성은 이벤트가 발생하는 동안 사용자가 입력한 문자에 해당하는 문자열을 반환합니다. 주로 input 이벤트와 함께 사용되며, 텍스트 필드에 마지막으로 입력된 글자가 무엇인지 실시간으로 확인할 수 있어 입력 검증이나 자동완성 기능 구현에 유용하게 활용됩니다.
문법(Syntax)
다음은 data 속성의 기본 문법입니다.
텍스트 필드에 가장 최근에 입력된 문자를 반환하는 방법:
event.data
예제(Example)
아래 예제는 InputEvent data 속성을 활용하여 사용자가 입력한 문자가 정답('A')과 일치하는지 판별하는 간단한 퀴즈 형태의 코드입니다.
<!DOCTYPE html>
<html>
<head>
<title>InputEvent Data</title>
<style>
form {
width:70%;
margin: 0 auto;
text-align: center;
}
* {
padding: 2px;
margin:5px;
}
input[type="button"] {
border-radius: 10px;
}
</style>
</head>
<body>
<form>
<fieldset>
<legend>InputEvent-Data</legend>
<label>빈칸을 채우세요:
<input type="text" id="textSelect" placeholder="__ for Apple" oninput="getEventData(event)">
</label>
<div id="divDisplay"></div>
</fieldset>
</form>
<script>
var divDisplay = document.getElementById("divDisplay");
var textSelect = document.getElementById("textSelect");
function getEventData(InputEvent) {
if(InputEvent.data === 'A')
divDisplay.textContent = '정답입니다!';
else
divDisplay.textContent = '다시 시도하세요, '+textSelect.placeholder;
textSelect.textContent = '';
}
</script>
</body>
</html>실행 결과(Output)
위 코드를 실행하면 다음과 같은 결과를 확인할 수 있습니다.
텍스트 필드에 아무것도 입력하지 않은 초기 상태:

틀린 답을 입력했을 때 화면에 '다시 시도하세요' 메시지가 표시됩니다:

정답인 'A'를 입력하면 '정답입니다!'라는 메시지가 출력됩니다:

참고 사항
data 속성은 삽입된 텍스트가 없거나 문자를 삭제한 경우 null을 반환할 수 있습니다. 또한 한 번에 여러 글자를 붙여넣기 하면 해당 문자열 전체가 반환되므로, 단일 문자 검증 시에는 문자열 길이를 함께 확인하는 것이 좋습니다. 이 속성은 Chrome, Firefox, Safari, Edge 등 주요 브라우저에서 폭넓게 지원됩니다.