입력데이터 값이 서버로 전송되기전에 특정 규칙에 맞게 입력 되었는검사
자바스크립트를 이용함
유효성 검사를 위해 핸들러 함수 만드는 과정
< script type="text/javascript">
function 핸들러 함수() {
var str = document.폼이름.입력항목 이름.value
}
< /script>
< form name="폼이름" >
....입력할 폼종류
< p> < input type="submit" value="전송">
< /form >
폼페이지에 입력된 데이터 값의 존재 유무검사
데이터 유뮤확인
document.폼이름.입력양식 이름.value==""
<script type="text/javascript">
function checkLogin() {
var form = document.loginForm;
if (form.id.value == "") {
alert("아이디를 입력해 주세요.");
form.id.focus();
return false;
} else if (form.passwd.value == "") {
alert("비밀번호를 입력해 주세요");
form.passwd.focus();
return false;
}
//자바스크립트로 form에 입력한 내용을 서버로 보낸다
form.submit(); //자바스크립트로 서버 보내기
}
</script>
데이터 길이 확인
document.폼이름.입력양식 이름.value.length
<script type="text/javascript">
function checkLogin( ){
var form = document.loginForm;
if (form.id.value.length < 4 || form.id.value.length > 12){
alert("아이디는 4~12자 이내로 입력 가능합니다!");
form.id.select();
return;
}
if (form.passwd.value.length < 4) {
alert("비밀번호는 4자 이상으로 입력해야 합니다!");
form.passwd.select();
return;
}
form.submit();
}
</script>
숫자 여부 확인
isNaN = 숫자가 아니면 true 숫자이면 false
isNaN(document.폼이름.입력양식 이름.value)
<script type="text/javascript">
function checkLogin( ){
var form = document.loginForm;
for (i=0; i<form.id.value.length; i++){
var ch = form.id.value.charAt(i);
if ((ch<'a'||ch>'z') && (ch>'A'||ch<'Z') && (ch>'0'||ch<'9')){
alert("아이디는 영문 소문자로만 입력 가능 합니다!");
form.id.select();
return;
}
}
///isNaN(숫자)=>false,숫자가아니면 true
if (isNaN(form.passwd.value) || form.passwd.value ==""){
alert("비밀번호는 숫자로만 입력 가능 합니다!");
form.passwd.select();
return;
}
form.submit();
}
폼페이지에 입력된 데이터 값이 특정 패턴에 적합한지 여부를 검사하며 정규표현식 사용
정규표현식
var 변수 이름 = /정규 표현식/[Flag];
var 변수 이름 = new RegExp('정규 표현식',[Flag]);
Flag 정규식표현끝에 /뒤에오는 문자열 생략가능
생략할시 문자열 내에 검색 대상이 많이 있어도 한 번만 검출함
Flag 종류
정규표현식 메소드 종류
test() - 매개변수 값으로 전달되는 문자열이 정규표현식에 부합한지 판단하여 true/fales반환
exec() - 매개변수 값으로 전달되는 문자열이 정규표현식에 부합한지 문자열을 추출하여 반환