[ JavaScript ] 자바스크립트 기본 문법 | 폼(form)태그 이벤트(submit, change, focus,blur)

2021. 2. 10. 01:59·Archive/Develop
728x90
반응형

이미지 출처 :     https://commons.wikimedia.org/wiki/File:JavaScript-logo.png

 

 

 

 

 

 

 

해당 포스팅은 생활코딩의 이고잉 님의 강의를 기반으로 개인 공부용으로 정리한 포스팅임을 미리 알립니다.

 

 

 


 

 

 

이번 포스팅에서는 폼과 관련된 이벤트 타입을 알아보도록 하겠습니다.

 

 

 

 

자바스크립트 기본 문법  ::  submit

 

 

 

submit 은 폼의 정보를 서버로 전송하는 명령인 submit 시에 발생합니다.

form 태그에 적용됩니다.

 

 

아래 예제는 전송 전에 텍스트 필드에 값이 입력 되었는지를 확인하는 예제입니다.

 

만약 값이 입력되지 않았다면 전송을 중단하도록 동작합니다.

 

 

 

 

<form id="target" action="result.html">
    <label for="name">name</label> <input id="name" type="name" />
    <input type="submit" />
</form>
<script>
var t = document.getElementById('target');
t.addEventListener('submit', function(event){
    if(document.getElementById('name').value.length === 0){
        alert('Name 필드의 값이 누락 되었습니다');
        event.preventDefault();
    }
});
</script>

 

 

 

 

 

 

name 이라는 id 를 가진 태그의 값이 아무것도 없을 때,

위 그림과 같이 Name 필드의 값이 누락되었다는 메시지와 함께 submit 이 중단됩니다.

 

 

 

 

event.preventDefault(); 

 

 

위 구문은 바로 전 포스팅인 기본 동작을 취소하는 명령입니다.

 

 

 

 

자바스크립트 기본 문법  ::  change

 

 

 

change는 폼 컨트롤의 값이 변경 되었을 때 발생하는 이벤트입니다.

 

 

input(text,radio,checkbox), textarea, select 태그에 적용되는 이벤트입니다.

 

 

 

<p id="result"></p>
<input id="target" type="name" />
<script>
var t = document.getElementById('target');
t.addEventListener('change', function(event){
    document.getElementById('result').innerHTML=event.target.value;
});
</script>

 

 

 

 

 

 

이렇게 입력창에 입력하고 포커싱을 다른 곳으로 옮기면

 

입력한 값이 그대로 p 태그 안에 텍스트로 자리잡게 됩니다.

 

 

 

 

 

 

자바스크립트 기본 문법  ::  blur, focus

 

 

 

 

focus는 엘리먼트에 포커스가 생겼을 때, blur은 포커스가 사라졌을 때 발생하는 이벤트입니다.

 

 

다음 태그를 제외한 모든 태그에서 발생합니다.

 

 

<base>, <bdo>, <br>, <head>, <html>, <iframe>, <meta>, <param>, <script>, <style>, <title>

 

 

 

 

<input id="target" type="name" />
<script>
var t = document.getElementById('target');
t.addEventListener('blur', function(event){
    alert('blur');  
});
t.addEventListener('focus', function(event){
    alert('focus'); 
});
</script>

 

 

 

 

input 태그를 클릭하면 아래 그림과 같이 focus 라는 경고창이 출력됩니다.

 

 

 

 

 

 

 

 

 

input 태그의 포커싱을 해제하면 아래와 같이 blur 라는 경고창이 출력됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

이번 포스팅은 이렇게 form 태그에서 발생하는 이벤트들을 알아봤습니다.

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형

'Archive > Develop' 카테고리의 다른 글

[ JavaScript ] 자바스크립트 기본 문법 | 마우스 이벤트(click,dbclick,mousedown,shtftKey,altKey,clientX,clientY)  (0) 2021.02.10
[ JavaScript ] 자바스크립트 기본 문법 | 문서로딩(load, DOMContentLoaded) | 스크립트 태그 위치  (0) 2021.02.10
[ JavaScript ] 자바스크립트 기본 동작 취소(preventDefault)  (0) 2021.02.10
[ JavaScript ] 자바스크립트 기본 문법 | 이벤트 전파(버블링과 캡쳐링)  (0) 2021.02.09
[ JavaScript ] 자바스크립트 기본 문법 | 이벤트리스너(addEventListener, 클릭 이벤트)  (0) 2021.02.09
'Archive/Develop' 카테고리의 다른 글
  • [ JavaScript ] 자바스크립트 기본 문법 | 마우스 이벤트(click,dbclick,mousedown,shtftKey,altKey,clientX,clientY)
  • [ JavaScript ] 자바스크립트 기본 문법 | 문서로딩(load, DOMContentLoaded) | 스크립트 태그 위치
  • [ JavaScript ] 자바스크립트 기본 동작 취소(preventDefault)
  • [ JavaScript ] 자바스크립트 기본 문법 | 이벤트 전파(버블링과 캡쳐링)
코뮤(commu)
코뮤(commu)
코딩으로 커뮤니케이션하는 코뮤입니다 😎
  • 코뮤(commu)
    코뮤(COMMU)
    코뮤(commu)
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Archive
        • Hacking
        • Develop
        • ETC
      • Algorithm
      • DB&Infra
      • ETC
      • Node
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • IT지식보따리
    • IT가 맛있다
    • IT 천재
  • 공지사항

    • 배고픕니다
  • 인기 글

  • 태그

    파이썬 문제
    코드업 기초
    파이썬 기초
    docker
    자바스크립트 API
    파이썬 기초 문제
    파이썬
    카카오 100일 프로젝트
    Codeup
    오라클
    Oracle
    파이썬 알고리즘
    Django
    백준
    자바스크립트 객체
    백준 문제풀이
    백준 풀이
    Python
    코드업
    보안뉴스
    Git
    장고
    C++
    파이썬 백준
    비박스
    javascript
    자바스크립트
    oracle db
    코드업 파이썬 기초 100제
    백준 파이썬
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
코뮤(commu)
[ JavaScript ] 자바스크립트 기본 문법 | 폼(form)태그 이벤트(submit, change, focus,blur)
상단으로

티스토리툴바