javascript 상용 검사 코드
/ * * 문자열 을 가 져 오 는 바이트 길이 * /
코드
function
strlen(str)
{
var
i;
var
len;
len
=
0
;
for
(i
=
0
;i
<
str.length;i
++
)
{
if
(str.charCodeAt(i)
>
255
) len
+=
2
;
else
len
++
;
}
return
len;
}
/*
* 숫자 인지 아 닌 지 판단 하면 true 로 되 돌아 갑 니 다. 그렇지 않 으 면 false 로 되 돌아 갑 니 다.
*/
코드
function
f_check_number(obj)
{
if
(
/^
\d
+
$
/
.test(obj.value))
{
return
true
;
}
else
{
f_alert(obj,
"
"
);
return
false
;
}
}
/*
* 자연수 여 부 를 판단 할 때 true 로 돌아 가 고 그렇지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_naturalnumber(obj)
{
var
s
=
obj.value;
if
(
/^
[
0
-
9
]
+
$
/
.test( s )
&&
(s
>
0
))
{
return
true
;
}
else
{
f_alert(obj,
"
"
);
return
false
;
}
}
/*
* 정수 인지 아 닌 지 판단 하면 true 로 되 돌아 갑 니 다. 그렇지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_integer(obj)
{
if
(
/^
(\
+|-
)
?
\d
+
$
/
.test( obj.value ))
{
return
true
;
}
else
{
f_alert(obj,
"
"
);
return
false
;
}
}
/*
* 실수 인지 아 닌 지 판단 하면 true 로 돌아 가 고 그렇지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_float(obj)
{
if
(
/^
(\
+|-
)
?
\d
+
($
|
\.\d
+
$)
/
.test( obj.value ))
{
return
true
;
}
else
{
f_alert(obj,
"
"
);
return
false
;
}
}
/*
* 숫자의 길이 와 정밀 도 를 검사
*/
코드
function
f_check_double(obj){
var
numReg;
var
value
=
obj.value;
var
strValueTemp, strInt, strDec;
var
dtype
=
obj.eos_datatype;
var
pos_dtype
=
dtype.substring(dtype.indexOf(
"
(
"
)
+
1
,dtype.indexOf(
"
)
"
)).split(
"
,
"
);
var
len
=
pos_dtype[
0
], prec
=
pos_dtype[
1
];
try
{
numReg
=/
[\
-
]
/
;
strValueTemp
=
value.replace(numReg,
""
);
numReg
=/
[\
+
]
/
;
strValueTemp
=
strValueTemp.replace(numReg,
""
);
//
if
(prec
==
0
){
numReg
=/
[\.]
/
;
if
(numReg.test(value)
==
true
){
f_alert(obj,
"
"
);
return
false
;
}
}
if
(strValueTemp.indexOf(
"
.
"
)
<
0
){
if
(strValueTemp.length
>
( len
-
prec)){
f_alert(obj,
"
"
+
(len
-
prec)
+
"
"
);
return
false
;
}
}
else
{
strInt
=
strValueTemp.substr(
0
, strValueTemp.indexOf(
"
.
"
) );
if
(strInt.length
>
( len
-
prec)){
f_alert(obj,
"
"
+
(len
-
prec)
+
"
"
);
return
false
;
}
strDec
=
strValueTemp.substr( (strValueTemp.indexOf(
"
.
"
)
+
1
), strValueTemp.length );
if
(strDec.length
>
prec){
f_alert(obj,
"
"
+
prec
+
"
"
);
return
false
;
}
}
return
true
;
}
catch
(e){
alert(
"
in f_check_double =
"
+
e);
return
false
;
}
}
/*
*
* bool
*/
코드
function
f_check_interval(obj)
{
var
value
=
parseFloat(obj.value);
var
dtype
=
obj.eos_datatype;
var
pos_dtype
=
dtype.substring(dtype.indexOf(
"
(
"
)
+
1
,dtype.indexOf(
"
)
"
)).split(
"
,
"
);
var
minLimit
=
pos_dtype[
0
];
var
maxLimit
=
pos_dtype[
1
];
var
minVal
=
parseFloat(pos_dtype[
0
]);
var
maxVal
=
parseFloat(pos_dtype[
1
]);
if
(isNaN(value))
{
f_alert(obj,
"
"
);
return
false
;
}
if
((isNaN(minVal)
&&
(minLimit
!=
"
-
"
))
||
(isNaN(maxVal)
&&
(maxLimit
!=
"
+
"
)))
{
f_alert(obj,
"
-、+
"
);
return
false
;
}
if
(minLimit
==
"
-
"
&&
!
isNaN(maxVal))
{
if
(value
>
maxVal)
{
f_alert(obj,
"
"
+
maxVal);
return
false
;
}
}
if
(
!
isNaN(minVal)
&&
maxLimit
==
"
+
"
)
{
if
(value
<
minVal)
{
f_alert(obj,
"
"
+
minVal);
return
false
;
}
}
if
(
!
isNaN(minVal)
&&
!
isNaN(maxVal))
{
if
(minVal
>
maxVal)
{
f_alert(obj,
"
"
+
minVal
+
"
"
+
maxVal);
}
else
{
if
(
!
(value
<=
maxVal
&&
value
>=
minVal))
{
f_alert(obj,
"
"
+
minVal
+
"
"
+
maxVal
+
"
"
);
return
false
;
}
}
}
return
true
;
}
/*
용도: 입력 문자열 이 한자 로 만 구성 되 어 있 는 지 확인 합 니 다.
인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_zh(obj){
if
(
/^
[\u4e00
-
\u9fa5]
+
$
/
.test(obj.value)) {
return
true
;
}
f_alert(obj,
"
"
);
return
false
;
}
/*
* 소문 자 여 부 를 판단 하려 면 true 로 돌아 가 고 그렇지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_lowercase(obj)
{
if
(
/^
[a
-
z]
+
$
/
.test( obj.value ))
{
return
true
;
}
f_alert(obj,
"
"
);
return
false
;
}
/*
* 대문자 인지 아 닌 지 판단 할 때 true 로 되 돌아 갑 니 다. 그렇지 않 으 면 false 로 되 돌아 갑 니 다.
*/
코드
function
f_check_uppercase(obj)
{
if
(
/^
[A
-
Z]
+
$
/
.test( obj.value ))
{
return
true
;
}
f_alert(obj,
"
"
);
return
false
;
}
/*
* 영문 자모 인지 아 닌 지 판단 하면 true 로 되 돌아 갑 니 다. 그렇지 않 으 면 false 로 되 돌아 갑 니 다.
*/
코드
function
f_check_letter(obj)
{
if
(
/^
[A
-
Za
-
z]
+
$
/
.test( obj.value ))
{
return
true
;
}
f_alert(obj,
"
"
);
return
false
;
}
/*
용도: 입력 문자열 이 한자, 자모, 숫자 로 만 구성 되 어 있 는 지 확인 합 니 다.
입력:
value: 문자열
돌아 가기:
인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_ZhOrNumOrLett(obj){
//
、 、
var
regu
=
"
^[0-9a-zA-Z\u4e00-\u9fa5]+$
"
;
var
re
=
new
RegExp(regu);
if
(re.test( obj.value )) {
return
true
;
}
f_alert(obj,
"
、
"
);
return
false
;
}
/*
용도: ip 주소 형식 검사
입력: strIP: ip 주소
반환: 인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_IP(obj)
{
var
re
=/^
(\d
+
)\.(\d
+
)\.(\d
+
)\.(\d
+
)$
/
;
//
IP
if
(re.test( obj.value ))
{
if
( RegExp.$
1
<
256
&&
RegExp.$
2
<
256
&&
RegExp.$
3
<
256
&&
RegExp.$
4
<
256
)
return
true
;
}
f_alert(obj,
"
IP
"
);
return
false
;
}
/*
용도: 입력 대상 의 값 이 포트 번호 형식 에 맞 는 지 확인 합 니 다.
입력: str 입력 문자열
반환: 인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_port(obj)
{
if
(
!
f_check_number(obj))
return
false
;
if
(obj.value
<
65536
)
return
true
;
f_alert(obj,
"
IP
"
);
return
false
;
}
/*
용도: 입력 대상 의 값 이 사이트 형식 에 맞 는 지 확인 합 니 다.
입력: str 입력 문자열
반환: 인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_URL(obj){
var
myReg
=
/^
((http:[
/
][
/
])
?
\w
+
([.]\w
+|
[
/
]\w
*
)
*
)
?
$
/
;
if
(myReg.test( obj.value ))
return
true
;
f_alert(obj,
"
"
);
return
false
;
}
/*
용도: 입력 대상 의 값 이 E - Mail 형식 에 맞 는 지 확인 합 니 다.
입력: str 입력 문자열
반환: 인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
function
f_check_email(obj){
var
myReg
=
/^
([
-
_A
-
Za
-
z0
-
9
\.]
+
)@([_A
-
Za
-
z0
-
9
]
+
\.)
+
[A
-
Za
-
z0
-
9
]{
2
,
3
}$
/
;
if
(myReg.test( obj.value ))
return
true
;
f_alert(obj,
"
"
);
return
false
;
}
/*
요구: 1. 이동 전화 번 호 는 11 번 또는 12 번, 12 번 이면 1 번 은 0 입 니 다.
2, 11 위 이동 전화번호 1 위 와 2 위 는 '13' 입 니 다.
3, 12 위 이동 전화번호 의 2 위 와 3 위 는 '13' 이다.
용도: 휴대 전화 번 호 를 입력 하 는 것 이 정확 한 지 확인 합 니 다.
입력:
s: 문자열
돌아 가기:
인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
functionf_check_mobile(obj){
varregu=/(^[1][3][0-9]{9}$)|(^0[1][3][0-9]{9}$)/;
varre=newRegExp(regu);
if(re.test(obj.value)){
returntrue;
}
f_alert(obj," ");
returnfalse;
}
/*
요구: 1. 전화 번 호 는 숫자, "(") "와" - "로 구성 되 어 있 습 니 다.
2. 전화 번 호 는 3 ~ 8 자리 입 니 다.
3. 전화번호 에 지역 번호 가 포함 되 어 있 으 면 지역 번 호 는 3 명 또는 4 명 입 니 다.
4. 지역 번 호 는 '(', ')' 또는 '-' 로 다른 부분 과 분리 합 니 다.
용도: 입력 한 전화번호 형식 이 정확 한 지 확인 합 니 다.
입력:
strPhone: 문자열
돌아 가기:
인증 을 통 해 true 로 돌아 가지 않 으 면 false 로 돌아 갑 니 다.
*/
코드
functionf_check_phone(obj)
{
varregu=/(^([0][1-9]{2,3}[-])?\d{3,8}(-\d{1,6})?$)|(^\([0][1-9]{2,3}\)\d{3,8}(\(\d{1,6}\))?$)|(^\d{3,8}$)/;
varre=newRegExp(regu);
if(re.test(obj.value)){
returntrue;
}
f_alert(obj," ");
returnfalse;
}
/ * 우편 번호 여 부 를 판단 합 니 다 * /
코드
functionf_check_zipcode(obj)
{
if(!f_check_number(obj))
returnfalse;
if(obj.value.length!=6)
{
f_alert(obj," 6 ");
returnfalse;
}
returntrue;
}
/*
사용자 ID, 숫자, 알파벳, 밑줄 을 그 을 수 있 는 조합,
첫 번 째 문 자 는 숫자 일 수 없고 총 길 이 는 20 을 초과 할 수 없습니다.
*/
코드
functionf_check_userID(obj)
{
varuserID=obj.value;
if(userID.length>20)
{
f_alert(obj,"ID 20");
returnfalse;
}if(!isNaN(userID.charAt(0)))
{
f_alert(obj,"ID ");
returnfalse;
}
if(!/^\w{1,20}$/.test(userID))
{
f_alert(obj,"ID 、 、 ");
returnfalse;
}
returntrue;
}
/*
기능: 주민등록번호 유효 여부 검증
알림 정보: 주민등록번호 가 입력 되 지 않 았 거나 입력 되 지 않 았 습 니 다!
사용: fcheck_IDno(obj)
복귀: bool
*/
코드
functionf_check_IDno(obj)
{
varaCity={11:" ",12:" ",13:" ",14:" ",15:" ",21:" ",22:" ",23:" ",31:" ",32:" ",33:" ",34:" ",35:" ",36:" ",37:" ",41:" ",42:" ",43:" ",44:" ",45:" ",46:" ",50:" ",51:" ",52:" ",53:" ",54:" ",61:" ",62:" ",63:" ",64:" ",65:" ",71:" ",81:" ",82:" ",91:" "};
variSum=0;
varinfo="";
varstrIDno=obj.value;
varidCardLength=strIDno.length;
if(!/^\d{17}(\d|x)$/i.test(strIDno)&&!/^\d{15}$/i.test(strIDno))
{
f_alert(obj," ");
returnfalse;
}
// x 10, a
strIDno=strIDno.replace(/x$/i,"a");if(aCity[parseInt(strIDno.substr(0,2))]==null)
{
f_alert(obj," ");
returnfalse;
}
if(idCardLength==18)
{
sBirthday=strIDno.substr(6,4)+"-"+Number(strIDno.substr(10,2))+"-"+Number(strIDno.substr(12,2));
vard=newDate(sBirthday.replace(/-/g,"/"))
if(sBirthday!=(d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate()))
{
f_alert(obj," ");
returnfalse;
}
for(vari=17;i>=0;i--)
iSum+=(Math.pow(2,i)%11)*parseInt(strIDno.charAt(17-i),11);
if(iSum%11!=1)
{
f_alert(obj," ");
returnfalse;
}
}
elseif(idCardLength==15)
{
sBirthday="19"+strIDno.substr(6,2)+"-"+Number(strIDno.substr(8,2))+"-"+Number(strIDno.substr(10,2));
vard=newDate(sBirthday.replace(/-/g,"/"))
vardd=d.getFullYear().toString()+"-"+(d.getMonth()+1)+"-"+d.getDate();
if(sBirthday!=dd)
{
f_alert(obj," ");
returnfalse;
}
}
returntrue;
}
/*
* 문자열 이 지정 한 정규 표현 식 에 맞 는 지 판단
*/
코드
functionf_check_formatStr(obj)
{
varstr=obj.value;
vardtype=obj.eos_datatype;
varregu=dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));//
varre=newRegExp(regu);
if(re.test(str))
returntrue;
f_alert(obj," ");
returnfalse;
}
/*
기능: 날짜 판단 (형식: yyy 년 MM 월 dd 일, yyy - MM - dd, yyy / MM / dd, yyyyMMdd)
알림 정보: 입력 하지 않 거나 입력 한 날짜 형식 오류!
사용: fcheck_date(obj)
복귀: bool
*/
코드
functionf_check_date(obj)
{
vardate=Trim(obj.value);
vardtype=obj.eos_datatype;
varformat=dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));//
varyear,month,day,datePat,matchArray;if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2})$/.test(format))
datePat=/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
elseif(/^(y{4})( )(M{1,2})( )(d{1,2})( )$/.test(format))
datePat=/^(\d{4}) (\d{1,2}) (\d{1,2}) $/;
elseif(format=="yyyyMMdd")
datePat=/^(\d{4})(\d{2})(\d{2})$/;
else
{
f_alert(obj," ");
returnfalse;
}
matchArray=date.match(datePat);
if(matchArray==null)
{
f_alert(obj," , ");
returnfalse;
}
if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2})$/.test(format))
{
year=matchArray[1];
month=matchArray[3];
day=matchArray[4];
}else
{
year=matchArray[1];
month=matchArray[2];
day=matchArray[3];
}
if(month<1||month>12)
{
f_alert(obj," 1 12 ");
returnfalse;
}
if(day<1||day>31)
{
f_alert(obj," 1 31 ");
returnfalse;
}
if((month==4||month==6||month==9||month==11)&&day==31)
{
f_alert(obj," 31 ");
returnfalse;
}
if(month==2)
{
varisleap=(year%4==0&&(year%100!=0||year%400==0));
if(day>29)
{
f_alert(obj,"2 29 ");
returnfalse;
}
if((day==29)&&(!isleap))
{
f_alert(obj," 2 29 ");
returnfalse;
}
}
returntrue;
}
/*
기능: yyy 년 MM 월 dd 일 HH 시 mm 분 ss 초, yyy - MM - dd HH: mm: ss, yyy / MM / dd HH: mm: ss, yyyy MMddHHmmss
알림 정보: 입력 되 지 않 거나 입력 되 지 않 은 시간 형식 오류
사용: fcheck_time(obj)
복귀: bool
*/
코드
functionf_check_time(obj)
{
vartime=Trim(obj.value);
vardtype=obj.eos_datatype;
varformat=dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));//
vardatePat,matchArray,year,month,day,hour,minute,second;if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2}) (HH:mm:ss)$/.test(format))
datePat=/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
elseif(/^(y{4})( )(M{1,2})( )(d{1,2})( )(HH mm ss )$/.test(format))
datePat=/^(\d{4}) (\d{1,2}) (\d{1,2}) (\d{1,2}) (\d{1,2}) (\d{1,2}) $/;
elseif(format=="yyyyMMddHHmmss")
datePat=/^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})$/;
else
{
f_alert(obj," ");
returnfalse;
}
matchArray=time.match(datePat);
if(matchArray==null)
{
f_alert(obj," , ");
returnfalse;
}
if(/^(y{4})(-|\/)(M{1,2})\2(d{1,2}) (HH:mm:ss)$/.test(format))
{
year=matchArray[1];
month=matchArray[3];
day=matchArray[4];
hour=matchArray[5];
minute=matchArray[6];
second=matchArray[7];
}else
{
year=matchArray[1];
month=matchArray[2];
day=matchArray[3];
hour=matchArray[4];
minute=matchArray[5];
second=matchArray[6];
}
if(month<1||month>12)
{
f_alert(obj," 1 12 ");
returnfalse;
}
if(day<1||day>31)
{
f_alert(obj," 1 31 ");
returnfalse;
}
if((month==4||month==6||month==9||month==11)&&day==31)
{
f_alert(obj," 31 ");
returnfalse;
}
if(month==2)
{
varisleap=(year%4==0&&(year%100!=0||year%400==0));
if(day>29)
{
f_alert(obj,"2 29 ");
returnfalse;
}
if((day==29)&&(!isleap))
{
f_alert(obj," 2 29 ");
returnfalse;
}
}
if(hour<0||hour>23)
{
f_alert(obj," 0 23 ");
returnfalse;
}
if(minute<0||minute>59)
{
f_alert(obj," 0 59 ");
returnfalse;
}
if(second<0||second>59)
{
f_alert(obj," 0 59 ");
returnfalse;
}
returntrue;
}
/ * 현재 대상 이 보 이 는 지 판단 * /
코드
functionisVisible(obj){
varvisAtt,disAtt;
try{
disAtt=obj.style.display;
visAtt=obj.style.visibility;
}catch(e){}
if(disAtt=="none"||visAtt=="hidden")
returnfalse;
returntrue;
}
/ * 현재 대상 및 부모 대상 이 보 이 는 지 판단 * /
코드
functioncheckPrVis(obj){
varpr=obj.parentNode;
do{
if(pr==undefined||pr=="undefined")returntrue;
else{
if(!isVisible(pr))returnfalse;
}
}while(pr=pr.parentNode);
returntrue;
}
/ * 경고 대화 상 자 를 팝 업 합 니 다. 사용자 가 확인 한 후 오류 텍스트 상자 에 커서 를 두 고 원래 입력 한 내용 을 선택 하 십시오. * /
코드
functionf_alert(obj,alertInfo)
{
varcaption=obj.getAttribute("eos_displayname");
if(caption==null)
caption="";
alert(caption+":"+alertInfo+"!");
obj.select();
if(isVisible(obj)&&checkPrVis(obj))
obj.focus();
}
/**
* 문자열 이 비어 있 는 지 확인
*/
코드
functionisnull(str)
{
vari;
if(str.length==0)
returntrue;
for(i=0;i<str.length;i++)
{
if(str.charAt(i)!='')
returnfalse;
}
returntrue;
}
/**
* 지정 한 텍스트 상자 의 입력 이 합 법 적 인지 확인 합 니 다.
* 사용자 가 입력 한 내용 이 잘못 되면 알림 대화 상 자 를 팝 업 합 니 다.
* 이 텍스트 상자 에 초점 을 맞 추고 이 텍스트 상자 앞 에 초점 을 맞 춥 니 다.
* 경고 아이콘 이 나타 납 니 다.
*/
코드
functioncheckInput(object)
{
varimage;
vari;
varlength;if(object.eos_maxsize+""!="undefined")length=object.eos_maxsize;
elselength=0;
if(object.eos_isnull=="true"&&isnull(object.value))returntrue;
/* */
if(length!=0&&strlen(object.value)>parseInt(length)){
f_alert(object," "+length);
returnfalse;
}
/* */
else{
if(object.eos_datatype+""!="undefined")
{
vardtype=object.eos_datatype;
varobjName=object.name;
// ,
if(dtype.indexOf("(")!=-1)
dtype=dtype.substring(0,dtype.indexOf("("));
//
try{
if(eval("f_check_"+dtype+"(object)")!=true)
returnfalse;
}catch(e){returntrue;}
/* form name , "min" "max" ,
。 "min" "max" 。 */
if(objName.substring((objName.length-3),objName.length)=="min")
{
varobjMaxName=objName.substring(0,(objName.length-3))+"max";
if(document.getElementById(objMaxName)!=undefined&&document.getElementById(objMaxName)!="undefined")
{
if(checkIntervalObjs(object,document.getElementById(objMaxName))!=true)
returnfalse;
}
}
}
}
returntrue;
}
/ * 폼 의 모든 입력 항목 의 정확성 을 검사 합 니 다. 일반적으로 폼 의 onsubmit 이벤트 에 사 용 됩 니 다 * /
코드
functioncheckForm(myform)
{
vari;
for(i=0;i<myform.elements.length;i++)
{
/* */
if(myform.elements[i].eos_displayname+""=="undefined")continue;
/* */
if(myform.elements[i].eos_isnull=="false"&&isnull(myform.elements[i].value)){
f_alert(myform.elements[i]," ");
returnfalse;
}
/* */
if(checkInput(myform.elements[i])==false)
returnfalse;
}
returntrue;
}
/**
* 두 폼 필드 데이터 의 크기 를 검사 합 니 다. 현재 날짜 와 숫자 만 비교 할 수 있 습 니 다.
* @ param obj 1 작은 값 폼 필드
* @ param obj 2 대 값 폼 필드
*/
코드
functioncheckIntervalObjs(obj1,obj2)
{
varcaption1=obj1.getAttribute("eos_displayname");
varcaption2=obj2.getAttribute("eos_displayname");
varval1=parseFloat(obj1.value);
varval2=parseFloat(obj2.value);
//
if(obj1.eos_displayname+""=="undefined"||obj2.eos_displayname+""=="undefined"){
returnfalse;
}
//
if(f_check_date(obj1)==true&&f_check_date(obj2)==true){
vardtype=obj1.eos_datatype;
varformat=dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));//
val1=getDateByFormat(obj1.value,format);
dtype=obj2.eos_datatype;
format=dtype.substring(dtype.indexOf("(")+1,dtype.indexOf(")"));//
val2=getDateByFormat(obj2.value,format);
if(val1>val2){
obj2.select();
if(isVisible(obj)&&checkPrVis(obj))
obj2.focus();
alert(caption1+" !");
returnfalse;
}
}
//
if((isNaN(val1)&&!isnull(val1))||(isNaN(val2)&&!isnull(val2))){
alert(caption1+" !");
returnfalse;
}
if(val1>val2){
obj2.select();
if(isVisible(obj)&&checkPrVis(obj))
obj2.focus();
alert(caption1+" !");
returnfalse;
}
returntrue;
}
/ * 날짜 형식 에 따라 문자열 을 Date 대상 으로 변환 합 니 다.년, MM - 월, d - 일, HH - 시, mm - 분, ss - 초.(형식 은 모두 써 야 합 니 다. 예 를 들 어 yy - M - d 는 허용 되 지 않 습 니 다. 그렇지 않 으 면 null 로 돌아 갑 니 다. 형식 이 실제 데이터 와 맞지 않 아 도 null 로 돌아 갑 니 다.) 기본 형식: yyy - MM - dd HH: mm: ss, yy - MM - dd. * /
코드
functiongetDateByFormat(str){
vardateReg,format;
vary,M,d,H,m,s,yi,Mi,di,Hi,mi,si;
if((arguments[1]+"")=="undefined")format="yyyy-MM-dd HH:mm:ss";
elseformat=arguments[1];
yi=format.indexOf("yyyy");
Mi=format.indexOf("MM");
di=format.indexOf("dd");
Hi=format.indexOf("HH");
mi=format.indexOf("mm");
si=format.indexOf("ss");
if(yi==-1||Mi==-1||di==-1)returnnull;
else{
y=parseInt(str.substring(yi,yi+4));
M=parseInt(str.substring(Mi,Mi+2));
d=parseInt(str.substring(di,di+2));
}
if(isNaN(y)||isNaN(M)||isNaN(d))returnnull;
if(Hi==-1||mi==-1||si==-1)returnnewDate(y,M-1,d);
else{
H=str.substring(Hi,Hi+4);
m=str.substring(mi,mi+2);
s=str.substring(si,si+2);
}
if(isNaN(parseInt(y))||isNaN(parseInt(M))||isNaN(parseInt(d)))returnnewDate(y,M-1,d);
elsereturnnewDate(y,M-1,d,H,m,s);
}
/ * LTrim (string): 왼쪽 빈 칸 제거 * /
코드
functionLTrim(str){
varwhitespace=newString("\t
\r");
vars=newString(str);if(whitespace.indexOf(s.charAt(0))!=-1){
varj=0,i=s.length;
while(j<i&&whitespace.indexOf(s.charAt(j))!=-1){
j++;
}
s=s.substring(j,i);
}
returns;
}
/ * RTrim (string): 오른쪽 빈 칸 제거 * /
코드
functionRTrim(str){
varwhitespace=newString("\t
\r");
vars=newString(str);
if(whitespace.indexOf(s.charAt(s.length-1))!=-1){
vari=s.length-1;
while(i>=0&&whitespace.indexOf(s.charAt(i))!=-1){
i--;
}
s=s.substring(0,i+1);
}
returns;
}
/ * Trim (string): 문자열 양쪽 의 빈 칸 제거 * /
코드
functionTrim(str){
returnRTrim(LTrim(str));
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.