항상 그렇듯 월요일은 주말이 끼어있기 때문에 여러가지가 수정되었다.
1. SSN의 int타입 변경
2. 아이디 중복 확인, 비밀번호 찾기 자식창의 엔터키 이벤트 지정
// 엔터 키 누를 때 확인 버튼 클릭
$("#confirmForm").keydown(function (event) {
if (event.which == 13) { // 13: 엔터 키의 keyCode
event.preventDefault(); // 기본 엔터 동작 방지
$("#check_answer").click(); // 확인 버튼 클릭
}
});
3. 로그인 메인의 쿠키를 통한 아이디 저장 기능
// 아이디 저장 체크박스 상태에 따라 쿠키 생성
if ($("#userIdSave").prop("checked")) {
var userId = $("#userId").val();
//쿠키 유효기간 1일, 경로 지정은 보류(WEB-INF/member/Login/loginMain.jsp)
document.cookie = "savedUserId=" + userId + "; expires=" + getCookieExpiration(1) + "; path=/";
}
//쿠키 만료일 지정
function getCookieExpiration(days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
return date.toUTCString();
}
// 쿠키 불러오기
var savedUserId = getCookie("savedUserId");
// 쿠키를 이름으로 가져오는 함수
function getCookie(name) {
var cookies = "; " + document.cookie;
var parts = cookies.split("; " + name + "=");
if (parts.length == 2){ //쿠키에 유저 아이디가 있는 경우
return parts.pop().split(";").shift(); //찾는 쿠키를 세미콜론을 기준으로 기준으로 자르기
}
}
// 쿠키가 존재하면 아이디 입력란에 표시
if (savedUserId) {
$("#userId").val(savedUserId);
}
4. 로그인 메인과 비밀번호 찾기 창에서 아이디 제약 추가
<form id="findPWForm" action="<%=request.getContextPath()%>/SearchPartPW" method="post">
아이디: <input type="text" class="must" id="userId" name="userId" pattern="[a-zA-Z0-9]{4,}" title="4자 이상의 영문 대소문자 또는 숫자를 입력하세요"><br>
이름: <input type="text" class="must" id="userName" name="userName"><br>
SSN: <input type="text" class="must" id="ssn1" name="ssn1" maxlength="6">
- <input type="password" class="must" id="ssn2" name="ssn2" maxlength="7"><br>
<input type="submit" value="확인">
</form>
//패턴 속성에 문구 삽입
$("#loginButton").on("click", function(){
console.log("Submit button clicked");
var inputValue = $("#userId").val();
// 유효한 경우 아무 동작도 하지 않음
if (/^[a-zA-Z0-9]+$/.test(inputValue)) {
$("#userId")[0].setCustomValidity('');
} else {
// 유효하지 않은 경우 오류 메시지를 직접 설정
$("#userId")[0].setCustomValidity('영문자 또는 숫자를 입력하세요.');
}
})
'팀프로젝트 > JAVA' 카테고리의 다른 글
JAVA 팀플) 0208_자동로그인 / css 외부파일화 (0) | 2024.03.18 |
---|---|
JAVA 팀플) 0207_AutoFocus / 네비게이션바 / SSN을 숫자로 입력 제한 (0) | 2024.03.18 |
JAVA 팀플) 20240126 DTO, 네비게이션바, 이름 제약 설정 (0) | 2024.03.15 |
JAVA 팀플) 20240125_서블릿 명칭 변경과 로그아웃 기능 (0) | 2024.03.14 |
JAVA 팀플) 20240124_프로젝트 합체 및 WEB-INF로 JSP 이동 (0) | 2024.03.14 |