문자열길이 체크
getByteLength(s) 한글2바이트, 영문 1바이트로 바이트수를 리턴
쿠키
setCookie( name, value, expireFlag ) Set Cookie
getCookie( name ) get Cookie
숫자
jsParseInt( varStr ) 문자를 숫자로 변환 null일때
jsConvertNumberToHangul( varNum ) 숫자를 한글로 변환
jsMakeCurrency( varTextObj ) 넘어온 숫자에 컴마를 찍어서 리턴 소숫점 허용안함
jsMakeForeignCurrency( varTextObj ) 넘어온 숫자에 컴마를 찍어서 리턴 소숫점 허용함
jsOnlyNumber( varTextObj ) 해당 텍스트박스 객체에 숫자만 입력받을수 있도록
jsOnlyFloat( varTextObj ) 해당 텍스트박스 객체에 숫자와 1개의 point만을 입력받게 해준다.
jsAddComma( varNumber )
숫자를 받아서 comma를 찍어서 리턴한다 소수점 인식 숫자가 아닌값 -1을 리턴 음수표현가능
jsAddCommaAndZero( varNumber )
숫자를 받아서 comma를 찍어서 리턴한다 소수점 인식 숫자가 아닌값 -1을 리턴 음수표현 불가능
jsCheckFloat(toCheck) Folat형인지를 체크 정수도 Float으로 인식
jsCheckPoint( toCheck , Positive , Negative ) 자리수 체크 정수 몇자리 소수 몇자리
jsCheckNumber(toCheck) Number타입인지 체크, 소수점은 Number타입으로 인식하지 않음
getCutNumber(num, place) 소수점 아래 몇자리 이하 절삭
jsOnlyNumberKey() text 입력시 숫자이외의 키를 눌렀을때 무효화시킨다.
jsCheckFloatType( varNum, varLeft, varRight ) 정수부분자리수 소수부분자리수 체크
기타
jsSplitCode(varString, varSplitChar, varIndex) 구분자로 구분해서 index의 문자를 리턴
jsCheckIp(toCheck) toCheck값이 정확한 IP Address인지 체크
jsCheckEmail( emailVal ) 이메일을 체크 - 보완요망
jsShowHelp( helpfile ) helpfile를 팝업으로 오픈
jsGetObjCnt( FormObj, varObjName ) 특정폼에서 해당오브젝트가 몇개인지를 리턴
jsClearFrame( fr ) 특정프레임에 공백 jsp를 띄워줌
jsDeleteCharAll( FormObj )
해당 폼에 해당하는 모든 오브젝트의 값들에서 ',' and '/'문자를 지워준다.
isAlphaNum(input) 영문과 숫자로만 이루어졌는지를 체크
containsCharsOnly(input,chars) 입력값이 특정 문자(chars)만으로 되어있는지 체크
popup1( varAction, varWinName, varWidth, varHeight ) 팝업을 호출
jsBack() 이전 페이지로 이동
jsVisible( str ) 특정조건에 해당하면 모래시계를 보여줌
jsRunAfterTime() 설정한 시간뒤에 특정 function을 호출
trim(text) ltrim(text) rtrim(text) text의 좌우측, 좌측, 우측의 공백을 제거해서 리턴
*/
/////////////////////////////////////////////////////////////////
////// GENERAL VALIDATION CHECK RETURN MESSAGE /////////////
/////////////////////////////////////////////////////////////////
/*--------------------------------------------------
기능 : Cookie Setting
INPUT : name, value
expireFg : 'Y' : 2020년 까지 쿠키저장
expireFg : 'N' : session이 끊어질때 쿠키지움
RETURN : NONE
----------------------------------------------------*/
function setCookie( name, value, expireFg ) {
var expireDate = new Date ( 2020, 1, 1, 1, 1, 1 ) ;
if ( expireFg = 'Y' )
document.cookie = name + "=" + value + "; expires=" + expireDate.toGMTString() ;
else
document.cookie = name + "=" + value + ";" ;
}
/*--------------------------------------------------
기능 : Cookie Get
INPUT : name
RETURN : 쿠키값( 없으면 "" )
----------------------------------------------------*/
function getCookie( name ) {
var cookieFound = false ;
var start = 0 ;
var end = 0 ;
var cookieString = document.cookie ;
var i = 0 ;
// name에 해당되는 cookie를 찾는다.
while ( i <= cookieString.length ) {
start = i ;
end = start + name.length ;
if ( cookieString.substring( start, end ) == name ) {
cookieFound = true ;
break ;
}
i++ ;
}
// cookie를 찾았으면 해당하는 값을 그렇지 않으면 ""을 return ;
if ( cookieFound ) {
start = end + 1 ;
end = document.cookie.indexOf(";",start) ;
if ( end < start )
end = document.cookie.length ;
return document.cookie.substring( start, end ) ;
}
/*--------------------------------------------------
기능 : Check IP address RETURN T/F
INPUT : toCheck -> check data
RETURN : true -> IP address
false -> not IP address
----------------------------------------------------*/
function jsCheckIp(toCheck)
{
var chkstr = toCheck+"" ;
var isIp = true ;
/*--------------------------------------------------
기능 : Check Number RETURN T/F ( 소수점"."은 Number로 취급안함 )
INPUT : toCheck -> check data
RETURN : true -> number ( "."이 포함안됨 )
false -> not number
----------------------------------------------------*/
function jsCheckNumber(toCheck)
{
var chkstr = toCheck+"" ;
var isNum = true ;
/*--------------------------------------------------
기능 : Check data RETURN T/F
INPUT : toCheck -> check data
checkOK -> 들어가서는 안되는 data
RETURN : false -> 들어가서는 안되는 data가 없다
true -> 들어가서는 안되는 data가 있다.
예1 : jsStrCheck( '12345', 'ABab' )
string '12345'에는 'ABab'가 없으므로
false를 리턴
예2 : jsStrCheck( '12$45', 'ABab$#%' )
string '12$45'에는 '$'가 있으므로
true를 리턴
----------------------------------------------------*/
function jsStrCheck(checkStr, checkOK) {
for (i = 0; i < checkStr.length; i++) {
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length) {
return false;
break;
}
}
return true;
}
/*--------------------------------------------------
기능 : Check Float RETURN T/F (정수도 Float로 취급)
INPUT : toCheck -> check data
RETURN : true -> number
false -> not number
----------------------------------------------------*/
function jsCheckFloat(toCheck)
{
var chkstr = toCheck+"" ;
var isFloat = true;
/*--------------------------------------------------
기능 : 날짜와 날짜 사이의 일수를 리턴한다.
INPUT : startDt(YYYYMMDD), endDt(YYYYMMDD)
RETURN : rtnValue : 날짜와 날짜 사이의 일수
-1 : ERROR..!
MSG :
----------------------------------------------------*/
function jsGetBetweenDay( startDt, endDt )
{
var rtnValue = 0 ;
// input date의 날짜 체크
if ( !jsCheckDate(startDt) || !jsCheckDate(endDt) ) {
rtnValue = -1 ;
}
else {
var yyyy = startDt.substring(0,4) +"" ;
var mm = startDt.substring(4,6) +"" ;
var dd = startDt.substring(6,8) +"" ;
var startDate = new Date(yyyy,(eval(mm)-1),dd) ; // 달 은 한달이 느리므로 1을 빼준다.
yyyy = endDt.substring(0,4) +"" ;
mm = endDt.substring(4,6) +"" ;
dd = endDt.substring(6,8) +"" ;
var endDate = new Date(yyyy,(eval(mm)-1),dd) ;
// 1000분의 1초 단위를 일 단위로 바꾸기
rtnValue = ((endDate-startDate)/60/60/24/1000) ;
}
return rtnValue ;
}
/*--------------------------------------------------
기능 : Check Time RETURN T/F
INPUT : check time
RETURN : true -> TIME
false -> NOT TIME
----------------------------------------------------*/
function jsCheckTime( toCheck )
{
var chkstr = toCheck + "";
var a1=toCheck.substring(0,1)
var a2=toCheck.substring(1,2)
var a3=toCheck.substring(2,3)
var a4=toCheck.substring(3,4)
var a5=toCheck.substring(4,5)
var a6=toCheck.substring(5,6)
var check_digit=a1*2+a2*3+a3*4+a4*5+a5*6+a6*7
var b1=toCheck.substring(6,7)
var b2=toCheck.substring(7,8)
var b3=toCheck.substring(8,9)
var b4=toCheck.substring(9,10)
var b5=toCheck.substring(10,11)
var b6=toCheck.substring(11,12)
var b7=toCheck.substring(12,13)
/*--------------------------------------------------
기능 : 한글이든 영문이든 제대로 갯수 체크를 해준다.
INPUT : String
RETURN :
----------------------------------------------------*/
function getByteLength(s){
var len = 0;
if ( s == null ) return 0;
for(var i=0;i<s.length;i++){
var c = escape(s.charAt(i));
if ( c.length == 1 ) len ++;
else if ( c.indexOf("%u") != -1 ) len += 2;
else if ( c.indexOf("%") != -1 ) len += c.length/3;
}
return len;
}
/*--------------------------------------------------
기능 : SELECT OPTION BOX의 값을 RETURN 한다.
INPUT : sb = selectBoxName
RETURN :
----------------------------------------------------*/
function jsCheckSelectBox ( sb )
{
var temp = sb.options[sb.selectedIndex].value ;
return ( temp );
}
function jsCheckSelectBoxNm ( sb )
{
var temp = sb.options[sb.selectedIndex].text ;
return ( temp );
}
/*--------------------------------------------------
기능 : 해당 Frame을 공백페이지로 변경
INPUT : fr : FrameName
RETURN :
----------------------------------------------------*/
function jsClearFrame( fr ) {
fr.location = "/common/blank.jsp";
}
/*--------------------------------------------------
기능 : checkBox를 전체선택 및 해제를 할수 있게 한다.
INPUT : FormObj FormName
elemNm CheckBox name
checkYn boolean
RETURN :
----------------------------------------------------*/
function jsToggle(FormObj, elemNm, checkYn){
var i =0;
while (i < FormObj.elements.length)
{
if (FormObj.elements[i].name== elemNm )
{
FormObj.elements[i].checked= checkYn;
}
i++;
}
}
/*--------------------------------------------------
기능 : focus 옮기기
INPUT : varTextObj : TextBox 객체명
varLength : 조건에 맞는 textLength
varFocusToObj : Focus를 옮겨갈 객체명
RETURN :
----------------------------------------------------*/
function jsMoveFocus( varTextObj, varLength, varFocusToObj ) {
if ( varTextObj.value.length == varLength ) {
varFocusToObj.focus() ;
varFocusToObj.select() ;
return ;
}
}
/*--------------------------------------------------
기능 : 문자를 숫자로 convert 한다. 단,
parseFloat 와 다른 점은 null 이 올때 0 으로 인식한다.
INPUT :
RETURN :
----------------------------------------------------*/
function jsParseInt( varStr ) {
if ( varStr == null || varStr == "" )
return 0 ;
else
return parseInt(varStr) ;
}
/*--------------------------------------------------
기능 : 숫자를 한글로 변환한다.
예) 450,000,000 -> 사억오천만
INPUT :
RETURN :
----------------------------------------------------*/
function jsConvertNumberToHangul( varNum )
{
// 리턴할 문자열
var returnStr = "" ;
// 음수일 때는 에러
if ( eval(varNum) < 0 ) {
return returnStr ;
}
// 넘어온 숫자를 문자로 변환
var numLen = varNum.length ;
// 변환된 문자를 앞에서 부터 한자씩 잘라서 보관할 변수
var oneChar = null ;
var isDone1 = true ;
var isDone2 = true ;
var isDone3 = true ;
var isDone4 = true ;
var isDone5 = false ;
for ( var inx = 0 ; inx < numLen ; inx++ ) {
oneChar = varNum.substring( inx, inx+1 ) ;
isDone5 = false ;
/*--------------------------------------------------
기능 : 숫자를 받아서 comma를 찍어서 리턴한다. 음수도 표현가능
예) 1000.00 -> 1,000.00
예) 숫자가 아닌 값 -> -1 리턴
INPUT :
RETURN :
----------------------------------------------------*/
function jsAddComma( varNumber ){
// 숫자가 아니면 -1을 리턴한다.
if ( jsCheckNull(varNumber) ) return "" ;
if ( !jsCheckFloat(varNumber) ) {
return -1 ;
}
// 소수 이상, 이하 부분을 따로 보관.
var PointIndex = varNumber.indexOf(".") ;
var varUnderPoint = "" ;
var isPointed = false ;
// 소수 이하가 없을때
if ( PointIndex < 0 ) {
isPointed = false ;
// 소수 이하 부분
varUnderPoint = "" ;
// 소수 이상 부분
varOverPoint = varNumber ;
// 소수 이하가 있을때
} else {
isPointed = true ;
// 소수 이하 부분
varUnderPoint = varNumber.substring(PointIndex+1, varNumber.length ) ;
// 소수 이상 부분
varOverPoint = varNumber.substring(0, PointIndex) ;
}
// 음수일때 앞의 "-" 따로 보관
var negativeFlag = false ;
if ( varOverPoint.substring(0,1) == "-" ) {
negativeFlag = true ;
varOverPoint = varOverPoint.substring(1,varOverPoint.length+1) ;
}
// 소수 이상 부분에 comma 넣기
var varLength = varOverPoint.length ;
var varCnt = 0 ;
var varTempReturnNumber = "" ;
for ( var inx = varLength-1 ; inx >= 0 ; inx-- ) {
varCnt++ ;
/*--------------------------------------------------
기능 : 숫자를 받아서 comma를 찍어서 리턴한다.
예) 1000 -> 1,000.00
예) 숫자가 아닌 값 -> -1 리턴
INPUT :
RETURN :
----------------------------------------------------*/
function jsAddCommaAndZero( varNumber ){
// 숫자가 아니면 -1을 리턴한다.
if ( jsCheckNull(varNumber) ) return "" ;
if ( !jsCheckFloat(varNumber) ) {
return -1 ;
}
// 소수 이상, 이하 부분을 따로 보관.
var PointIndex = varNumber.indexOf(".") ;
var varUnderPoint = "" ;
// 소수 이하가 없을때
if ( PointIndex < 0 ) {
// 소수 이하 부분
varUnderPoint = "" ;
// 소수 이상 부분
varOverPoint = varNumber ;
// 소수 이하가 있을때
} else {
// 소수 이하 부분
varUnderPoint = varNumber.substring(PointIndex+1, varNumber.length ) ;
// 소수 이상 부분
varOverPoint = varNumber.substring(0, PointIndex) ;
}
// 소수 이상 부분에 comma 넣기
var varLength = varOverPoint.length ;
var varCnt = 0 ;
var varTempReturnNumber = "" ;
for ( var inx = varLength-1 ; inx >= 0 ; inx-- ) {
varCnt++ ;