| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- nodejs 게시판
- React 자습서
- node js 설치
- js 게시판
- js 로또
- 화살표함수
- 배열 메서드
- js 함수 표현식
- js 무한루프 슬라이드
- js로또 만들기
- Rebase
- React 기본설정
- JS DOM
- Git
- js 생성자 함수
- js 댓글수정
- Linux 사용자
- node js 기본
- js 함수 #함수
- js DOM 기초
- 3way handshake
- Linux 기본
- 콜백함수
- GitHub
- typescript
- branck 합치기
- js 메서드
- css #css기초
- js 댓글
- Object.keys
- Today
- Total
개발 노트
Javascript // 9일차 [DOM-] 본문
목차
1. DOMContentLoaded
2. Form
1. DOMContentLoaded
브라우저가 로드가 끝나면 자동적으로 실행시키게 하는 코드. "최초에 한 번"만 발동하고
메서드 호출 자체가 로드가 끝나면 >>> 실행되게 한다.
HTML은 html을 다 읽었을 때 실행이 된다.
html의 로드가 끝나면 사용자는 html을 볼 수 있게 된다.
하지만 html 안에 java가 있다면 html은 java + html 이 다 실행이 돼야 화면이 뜨게 된다.
html이 로드되고 java가 실행된다면 html의 실행시간을 조금 더 줄일 수 있게 된다.
이러한 일을 가능하게 해주는 것이 DOMContentLoaded 이다.
2. Form
value = 기본적으로 가지고 있는 값들이다.
submit을 누르면 기본적으로 url이 바뀌게 된다. (querystring)
js에서 원하는 설정을 하고 url을 바꾸는 것을 목적으로 한다.
submit 이벤트는 form엘리먼트에서만 등록이 가능하다.
**
submit 이벤트 없으면
브라우저에서 submit 버튼을 누르면
내용을 만들어서 action 값에 있는 url로 이동
**
submit 이벤트 있다면
브라우저에서 submit 버튼을 누르면
submit 이벤트를 발동 시킴. 이후 submitHandelr 함수가 호출되고 호출이 끝나야
내용을 만들어서 action 값에 있는 url로 이동
**Handler 함수는 이벤트 값을 받는다. 보통 e하나 써 놓는다(event라는 의미)
e.prevenDefault() // 사용하면 엘리먼트가 가진 기능을 막는 메서드이다
ex) a태그의 링크 이동, action 값에 있는 url 이동 등을 막는다.
e.target // 이벤트를 발동시킨 엘리먼트를 가져오는 코드다
그렇다면 뭐하러 일부러 막는가?
A. 내가 원하는 시점에서 submit을 날리고 싶다면 막고 내 마음대로 조작을 가능하게 한다.
**
만약에 input이 비어있다면. submit 안 날리고 이벤트 실행
value 값이 비어있다 = 값이 없다.라는 뜻
uid인 input 가져오기
const uid = document.querySelector("#uid")
console.log(uid.value)
input에 넣은 값을 value 값을 가져온다.
if (uid.value !== "" && upw.value !== "") {
e.target.submit()
} else {
alert("아이디나 패스워드 입력하세요!!")
}
js로 elment 만들기
document.createElement(엘리먼트이름)
document.createElement('li') li 엘리먼트를 만들어줍니다.
둘 다 값이 비어있으면 경고창
둘 다 입력이 되어 있다면 url 연결
아이디나 패스워드 비어있는 거 따로 만들어보기
'Javascript' 카테고리의 다른 글
| Javascript // 12일차 [로또 완성본, 슬라이드] (0) | 2022.11.14 |
|---|---|
| Javascript // 10일차 [setTimeout, setInterval] (0) | 2022.11.10 |
| Javascript // 8일차 [DOM-2(Event)] // 로또 (0) | 2022.11.08 |
| Javascript // 7일차 [DOM 기초] (0) | 2022.11.07 |
| Javascript// 6일차 [상속, 날짜, 삼항연산자] (0) | 2022.11.04 |