일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Binding
- GitHub
- Maui
- .NET
- spring boot
- JavaScript
- HTML
- Firebase
- page
- Animation
- 애니메이션
- db
- 함수
- 닷넷
- Flutter
- listview
- 리엑트
- 파이어베이스
- typescript
- React JS
- 바인딩
- 마우이
- AnimationController
- MSSQL
- 플러터
- MVVM
- 깃허브
- MS-SQL
- 자바스크립트
- 오류
Archives
- Today
- Total
개발노트
10. [Javascript] 이벤트 기본 동작 막기 (with preventDefault) 본문
반응형
preventDefault()
- preventDefault는 이벤트의 기본 동작을 취소하는 메서드입니다.
- 이벤트가 발생했을 때 기본 동작을 수행하지 않도록 막는 데 사용됩니다.
- 일반적으로, 웹 페이지에서 발생하는 이벤트(예: 링크 클릭, 폼 제출 등)는 기본 동작이 정의되어 있습니다.
- preventDefault 메서드는 이벤트 객체의 메서드로 호출됩니다.
- 일반적으로 이벤트 핸들러 함수 내에서 사용됩니다.
<form id="myForm">
<input type="text" name="username" placeholder="사용자 이름" />
<input type="password" name="password" placeholder="비밀번호" />
<button type="submit">로그인</button>
</form>
<script>
// submit 이벤트 핸들러
function handleSubmit(event) {
event.preventDefault(); // 기본 동작 중지
// 폼 데이터 수집
var formData = new FormData(event.target);
var username = formData.get('username');
var password = formData.get('password');
// 폼 데이터 처리 또는 추가 동작 수행
console.log('사용자 이름:', username);
console.log('비밀번호:', password);
// ... 추가 동작 수행
}
// 폼 요소 선택
var form = document.getElementById('myForm');
// submit 이벤트에 핸들러 등록
form.addEventListener('submit', handleSubmit);
</script>
위의 예시에서 handleSubmit 함수는 submit 이벤트를 처리하는 핸들러입니다.
event.preventDefault()를 호출하여 기본 동작인 폼 데이터의 서버 전송과 페이지 새로고침을 중지시킵니다.
그 후, 폼 데이터를 수집하고 처리하는 등의 추가 동작을 수행할 수 있습니다.
이를 위해 FormData 객체를 사용하여 폼 데이터를 수집하였고, 이후 폼 데이터를 활용하여 원하는 작업을 수행할 수 있습니다.
이와 같이 submit 이벤트를 처리하고 event.preventDefault()를 사용하면 폼의 기본 동작을 중지시킬 수 있으며, 원하는 동작을 자유롭게 구현할 수 있습니다.
- 참고링크: https://developer.mozilla.org/ko/docs/Web/API/Event/preventDefault
반응형
'웹 개발 > Javascript' 카테고리의 다른 글
12. [Javascript] fetch() 함수로 웹 API로 JSON 데이터 받기 (0) | 2023.06.09 |
---|---|
11. [Javascript] forEach 메서드 (Array용 for문) (0) | 2023.05.23 |
9. [Javascript] JS로 Class 속성 추가, 제거하기 (with classList) (0) | 2023.05.23 |
8. [Javascript] JS로 HTML 요소 만들기 (with createElement, appendChild) (0) | 2023.05.23 |
7. [Javascript] localStorage를 이용한 로컬 DB 활용하기 (0) | 2023.05.23 |
Comments