"이름을 입력하세요"
[ ] [확인]
입력을하고 확인버튼을 누르면 다음 창에
"이름님 환영합니다."
이런 메세지가 뜨게 할 수 있나요?
그리고 혹시 가능하다면 숫자나 특수문자 같이 보통 이름에 못 쓰는 글자는 불가능하게도 할 수 있나요?
"이름을 입력하세요"
[ ] [확인]
입력을하고 확인버튼을 누르면 다음 창에
"이름님 환영합니다."
이런 메세지가 뜨게 할 수 있나요?
그리고 혹시 가능하다면 숫자나 특수문자 같이 보통 이름에 못 쓰는 글자는 불가능하게도 할 수 있나요?
<script>
function welcome() {
var user = document.getElementsByClassName('welcome')[0].value;
event.preventDefault();
if(user.length<3) {
alert('2자리 이상을 입력해주세요.');
} else if(user.match(/^[\uAC00-\uD7A3]*$/)) {
callback(user);
} else if(user.match(/([^가-힣\x20])/i)) {
alert('특문이나 숫자, 자모 또는 영문은 입력할 수 없습니다.');
}
}
function callback(user) {
alert(user + '님 환영합니다.');
}
</script>
<form onsubmit="welcome()">
<input type="text" class="welcome" value="" required/>
<button type="submit">확인</button>
</form>
네, 둘 다 가능합니다.
메시지 뜨게 하는 건 알림창으로도 가능하고, 현재 페이지에도 가능하며, 새로운 페이지에도 가능합니다.
입력되는 이름 역시 유효성 검사를 통해 에러 메시지를 출력할 수도 있고, 문자만 선별적으로 입력 받을 수도 있으며, 아예 입력 단계에서 키 자체를 무효화할 수도 있습니다.
구글링을 해보시면 소스가 굉장히 많이 나올 거예요.