Files
Rinjae a1d74cf004 init
2025-09-05 19:06:22 +09:00

64 lines
1.6 KiB
JavaScript

/**
* 입력값이 사용자가 정의한 포맷 형식인지 체크
* 자세한 format 형식은 자바스크립트의 'regular expression'을 참조
*/
function isValidFormat(input,format)
{
if (input.search(format) != -1)
{
return true; //올바른 포맷 형식
}
return false;
}
/**
* 입력값이 이메일 형식인지 체크
* ex) if (!isValidEmail(input)) {
* alert("올바른 이메일 주소가 아닙니다.");
* }
*/
function isValidEmail(input)
{
var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
return isValidFormat(input,format);
}
function isValidIPAddress(input)
{
var format = /^(\d+).(\d+).(\d+).(\d+)$/
return isValidFormat(input,format);
}
/**
* 입력값에 숫자만 있는지 체크
*/
function isNumber(input) {
var chars = "0123456789";
return containsCharsOnly(input,chars);
}
/**
* 입력값에 alpabet만 있는지 체크
*/
function isAlpabet(input) {
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
//input = input.toUpperCase();
//alert(input);
return containsCharsOnly(input,chars);
}
/**
* 입력값이 특정 문자(chars)만으로 되어있는지 체크
* 특정 문자만 허용하려 할 때 사용
* ex) if (!containsCharsOnly(form.blood,"ABO")) {
* alert("혈액형 필드에는 A,B,O 문자만 사용할 수 있습니다.");
* }
*/
function containsCharsOnly(input,chars) {
for (var inx = 0; inx < input.length; inx++) {
if (chars.indexOf(input.charAt(inx)) == -1)
return false;
}
return true;
}