

자주 이용하는 html 요소를 등록할 때

이벤트가 발생한 html요소를 선택할 때, 이벤트가 발생한 요소 선택은 e.target로 작성 가능
웹브라우저에서 파일을 업로드하면 임시 폴더에 저장
우리는 webapp의 upload 파일에 카피(임시 폴더를 원하는 위치에 원하는 이름으로 가지고 와야함)를 해야한다.





전체흐름
내가 파일을 업로드하면 submit 이 되고 기본 페이지 이동이 막아짐 -> fetch 함수로 servlet에서 복잡한 작업을 한다 = 원본 파일명, 저장될 파일명, 저장될 경로 를 설정하고 지정한 경로에 저장 -> jsp 페이지로 응답 -> 웹브라우저에서 내가 원하는 데이터만 뽑아서 html 구성

데이터를 서버에 보낼때 (특히 이미지, 파일)은 Form 형식에 담아서 보낸다.

html의 요소를 변경하고 싶을 때, jsp 는 ${}을 무조건 해석 VS
자바스크립트는 "${}" 대입하는 데이터를 표현하는 식 헷갈리지 않ㄴ게 자바스크립트 요소 앞에 \ 작성하기
파일의 위치(upload)는 파일이 저장될 위치며 경로는 upload에 저장하기 위해 만든 길로 길에는 파일의 이름까지 있어야 한다.
즉 원하는 위치에 저장하기 위해서는 파일의 경로에 파일의 이름이 포함되어있어야 한다.
그러면 진짜 DB가 연결이 된다면..?
html 작성 폼 생성 및 제출 시의 함수 등록하기

smartEditor를 실행하는 자바스크립트 갖고오기
제출 버튼을 누르면 submitContents(elClickedObj)를 실행되면서
textarea의 value 값에 입력한 글의 정보가 마크업 돼서 담긴다.

*submitContents(elClickedObj) 는 버튼을 누르면 제출!
스마트에디터 자바스크립트를 복사해서 가져오고 textarea 영역의 id와 name 확인해서 자바스크립트와 일치 후 button요소 onclick 추가
글 수정 양식(기존에 입력한 내용을 갖고오기)


smartEditor를 실행하는 자바스크립트 갖고오기
단 여기서 textarea의 name과 id가 content인지 확인하기
글수정 기능은 입력폼 복사만 하고 입력한 내용 가져오기
단, textarea는 innerText로 넣는다.
ex. 비밀번호 입력 시 특수문자를 조합해라!, 이메일 주소를 입력하면 이메일 형식에 맞게 입력
https://regex101.com/
단어가 들어갔는지 숫자가 있는지 패턴까지 알 수 있음



[]
[abc]=> 한글자가 될수 있는 후보군 = 안에 들어있는 문자 중에 한글자
[a-z] => 영문자 소문자가 있는지 여부
[A-Z] => 영문자 대문자가 한글자 있는지 여부
[a-zA-Z0-9] => 특수문자가 아닌 한글자
[가-힣] => 한글 한글자
[^a-z] => not의 의미로 영어 소문자가 아닌 글자
^[^a-zA-Z0-9] => 특수문자로 시작하는 글자

자바스크립트로 Html에 요소를 추가하고 싶을 때 사용
1-2. backtic
backtic으로 사용할 때는 "${넣기 원하는 데이터}"를 활용
backtic은 html의 원하는 요소를 생성할 때 사용