[javascript] 자바스크립트로 파일 업로드 이벤트 처리하기
파일 업로드는 웹 애플리케이션에서 자주 사용되는 기능 중 하나입니다. 사용자가 파일을 선택하고 업로드하는 동작을 구현하려면 자바스크립트를 사용하여 이벤트를 처리해야 합니다. 우리는 이 블로그 포스트에서 자바스크립트로 파일 업로드 이벤트를 처리하는 방법에 대해 알아보겠습니다.
1. HTML 파일 입력 필드 생성
먼저, 파일 업로드를 위한 <input type="file">
필드를 HTML에 추가해야 합니다.
<input type="file" id="fileInput" />
<button onclick="uploadFile()">업로드</button>
2. 파일 선택 이벤트 처리
다음으로, 파일을 선택했을 때 이를 감지하고 처리하는 자바스크립트 함수를 만들어야 합니다.
function handleFileSelect(event) {
const files = event.target.files;
// 선택한 파일에 대한 처리 로직을 추가합니다.
}
document.getElementById('fileInput').addEventListener('change', handleFileSelect);
3. 파일 업로드 처리
마지막으로, 파일을 서버로 업로드하는 로직을 추가해야 합니다. 이것은 서버측 코드와의 통합이 필요할 수 있습니다. 예를 들어 AJAX나 fetch API를 사용하여 파일을 서버로 전송할 수 있습니다.
function uploadFile() {
const input = document.getElementById('fileInput');
const file = input.files[0];
const formData = new FormData();
formData.append('file', file);
fetch('/upload', {
method: 'POST',
body: formData
})
.then(response => {
// 업로드 완료 후 처리할 로직을 추가합니다.
})
.catch(error => {
// 에러 처리 로직을 추가합니다.
});
}
위의 예시는 단순화된 형태의 파일 업로드 로직을 보여줍니다. 실제 파일 업로드 시 보안 및 에러 처리 등을 고려해야 합니다.
파일 업로드를 처리하는 자바스크립트 코드의 예시를 살펴보았습니다. 이를 통해 사용자가 웹 애플리케이션에서 파일을 선택하고 업로드하는 과정을 자바스크립트를 통해 어떻게 처리하는지에 대해 이해할 수 있었습니다.
참고문헌: MDN Web Docs, W3Schools