KOSTA 26일차) javascript / servlet / dom / 404, 500에러

해버니·2023년 4월 8일
0

KOSTA

목록 보기
20/32
post-thumbnail

전역변수 & 지역변수

	var a = 1;
	let b = 2;
	const MAX = 10;
	// MAX = 200; 변경 불가
	console.log("MAX : " + MAX);

	function f1() {
		console.log("f1() a : " + a);
		console.log("f1() b : " + b);
	}

	function f2() {
		num1 = 1004;
		let num2 = 1005;
		console.log("f2() a : " + a);
		console.log("f2() b : " + b);
	}

	console.log("a : " + a);
	console.log("b : " + b);

	f1();
	f2();
	console.log("num1 : " + num1);
	console.log("num2 : " + num2);



const는 상수를 담는 타입이고 보통 변수명은 대문자이다.


함수 안에 타입 상관 없이

num1 = 1004;

로 선언한다면 전역변수가 되어 어느 곳에서든 불러올 수 있지만


let num2 = 1005;

let은 선언한 그 블록 내에서만 선언할 수 있다.
















servlet

서블릿 만들기

New > Servlet 클릭







Name 지정해주고 add나 edit을 눌러서 경로 지정을 해준다.








OK > Finish








이 부분 지워주고 실행하면 잘 보내진다












javascript

이벤트

뷰페이지에서 발생하는 사건
핸들러 : 이벤트가 발생하면 자동 호출되는 함수



click - onclick (클릭 이벤트 핸들러 등록 속성)
keydown - onkeydown (keydown 이벤트 핸들러 등록 속성)
keyup - onkeyup (keyup 이벤트 핸들러 등록 속성)
load - onload (load 이벤트 핸들러 등록 속성)

<input type="button" value="b1" onclick="함수명()">



window.onload

onload는 속성인데 load 이벤트 핸들러를 등록하는 속성이다.
그래서 여기에 뭘 넣어줘야할까?
window.onload = 함수명을 넣어주면 된다.



예를 들어

function tes(){
	실행문;
}
window.onload=test;




이렇게 쓸 수 있는데 살짝s 귀찮을 수 있어서 밑처럼 줄여서 쓴다.

window.onload = function() { // 익명함수 이때만 쓸거야~할 때
	실행문;
} 











html

form

<form name="f">
<input type="text" name="t1">
</form>

→ 이름이 t1인 입력 양식의 값 : f.t1.value





form의 action이 뭐야?

js의 submit은 html의 submit과 동일한 기능을 하는 친구이다.

link로 이동하는 건 get 방식이다!!! <a>

경우에 따라서 get과 post를 합쳐서 만들어야 할 때가 있고 나눠서 만들어야 할 때가 있다.








input

<input type="hidden" name="h" value="로제떡볶이"> 

사용자가 입력하지 않는 값은데 서버에 전송해야 할 정보이면 같이 묶어서 보내주기 위해서 hidden이 존재한다.
화면에는 안 보이지만 value값을 서버로 전송할 때 사용한다.
그니까 사용자를 위해서 존재하는 게 아니라 (개발자를 위해) 서버에 어떤 것을 전달하기 위해 사용한다.

(+ 체크박스는 서버에 배열로 들어가게 된다.)









DOM (Document Object Model)

1. 요소 추출 메서드

document.getElementById("아이디");
// 요소 한 개 반환
document.getElementsByTagName("태그명");
/// 동일한 태그명을 찾아서 배열에 담아 반환
document.getElementsByClassName("클래스명");
// 동일한 클래스명을 찾아서 배열에 담아 반환





2. innerHTML

여는 태그와 닫는 태그 사이의 값




3. 요소 속성값

요소.attribute = 새값;
요소.setAttribute("속성명", "값");
요소.getAttribute("속성명"); // 속성값 반환





4. 요소 추가/삭제

1) 요소 생성
document.createElement("태그");


2) 요소 추가
document.appendElement(요소);


3) 요소 삭제
document.removeChild(요소);


4) 요소에 이벤트 핸드러 추가
요소.핸들러 = 함수








404 에러와 500 에러 tip

404 에러는 경로가 잘못된 것. 경로를 잘 썼는가를 확인해보기
500 에러는 내가 오타를 썼는가를 살펴봐야 한다.








🔥 오늘의 숙제

✔ 회원가입 폼 만들기
id
pwd
pwd 확인
email



✔ 조건
가입버튼 누르면
id는 6글자 이상 필수사항
pwd 5글자 이상. "pwd확인"과 일치. 필수사항.



✔ 실시간 댓글작성하는 웹 페이지 만들어보기

작성자 :
글 비밀번호 :
내용 :
작성버튼

수정 , 삭제 버튼 추가
수정 누르면 수정되고 삭제 버튼 누르면 삭제 되도록 만들어보기




0개의 댓글