홈으로 | 무료회원가입 | 아이디/비번찾기
추천음악방송
javascript함수
15년 전
/*
Text
jsChangeComma( str ) ' -> ` 로 대치
jsStrCheck(checkStr, checkOK)
  들어가서는 안되는 데이타(checkOK)가 checkStr에 포함되어있는지 체크
jsMoveFocus( varTextObj, varLength, varFocusToObj )
  TextBox에서 조건이 만족하면 특정객체로 포커스를 이동
jsCheckNull( toCheck ) toCheck의 값이 Null값인지를 체크
jsDeleteComma( varNumber ) 컴마를 삭제하고 리턴
jsDeleteChar( varText, varDelete ) 문자열에서 해당 character를 지우고 리턴
  
CheckBox
jsCheckBoxSelectedCnt( FormObj, checkBoxName )
  FormObj에서 checkBox 가 몇개 선택되었는지  리턴한다.
jsToggle(FormObj, elemNm, checkYn)
  특정 폼안의 체크박스오브젝트를 전체선택하거나 전체반전시킴
  
SelectBox
jsCheckSelectBox ( sb ) SelectBox에서 선택된 값의 value를 리턴
jsCheckSelectBoxNm ( sb ) SelectBox에서 선택된 값의 Text를 리턴
cmInitSelectBox( varObjFullNm, varDeleteCnt )
  해당 SelectBox를 초기화 시킨다. varDeleteCnt가 1이면 첫번째값을 지우지 않는다.
cmMakeSelectBox( varObjFullNm, varText, varValue ) 해당 selectBox에 하나의 값을 추가시킴
    
날짜  
jsCheckYYYY(toCheck) 년도를 체크
jsCheckYYYYMM(toCheck) 년월을 체크
jsCheckMM(toCheck) 월을 체크
jsCheckDD(yyyy,mm,toCheck) 일을 체크
jsCheckDate( dateVal ) 날짜를 체크
jsAddYear( startDt, plusYear ) 날짜에 년수를 더함
jsAddMonths( startDt, plusMonth ) 날짜에 월수를 더함
jsGetBetweenDay( startDt, endDt ) 날짜와 날짜사이의 일수를 리턴
jsCheckTime( toCheck ) 시간포맷인지를 체크
jsMakeYyyyMm( varTextObj )
  해당 텍스트박스 객체필드에 YYYY/MM형식으로 [/]를 찍어서 채워준다.
jsMakeYyyyMmString( varText ) 넘어온 값에 날짜형식으로 [/]를 찍어서 리턴.
jsMakeDate( varTextObj ) 넘어온 Object의 값을 날짜형식으로 채워줌
jsMakeDateString( varText )넘어온 값을 날짜형식으로 리턴
toTimeString( varDateObj ) DateObj를 넘겨주면 년월일을 리턴  20030201
jsAfterThisDate( varStdDate , varYYYY , varMM , varDD )
  날짜형식의 문자열에 특정 년, 월, 일을 더한값을 리턴
    
주민등록번호
jsCheckJumin(toCheck) 주민등록번호 체크



사업자등록번호
jsCheckSaupJa(toCheck) 사업자등록번호 체크



문자열길이 체크
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 ) ;
    }



    return "" ;
}



/*-----------------------------------------------
' ->문자를 쿼리문에 사용시 에러가 발생하므로 `로 대치
INPUT  : str
RETURN : 문자열안의 문자중 ' 문자를 ` 로 변경한 문자열
-------------------------------------------------*/
function jsChangeComma( str ){
while( str.indexOf("'") != -1 ){
  str = str.replace("'","`");
}
  return str;
}



/*----------------------------------------------------------
  기능  : Split Code RETURN Splited code by varSplitChar
  INPUT  : varString 문자
    : varSplitChar 구분자
  : varIndex 구분자의 위치
  RETURN : Splited code by varSplitChar
  예    : jsSplitCode( "111^222^333", "^", 2 ) == "222"
-----------------------------------------------------------*/
function jsSplitCode(varString, varSplitChar, varIndex) {
var varArray = varString.split(varSplitChar) ;



return varArray[eval(varIndex)-1];
}



/*--------------------------------------------------
  기능  : Check Null RETURN T/F
  INPUT  : check  data
  RETURN : true  -> NULL
          false -> NOT NULL
----------------------------------------------------*/
function jsCheckNull( toCheck )
{
    var chkstr = toCheck + "";
    var is_Space = true ;



    if ( ( chkstr == "") || ( chkstr == null ) )
    return( true );



    for ( j = 0 ; is_Space && ( j < chkstr.length ) ; j++)
    {
      if( chkstr.substring( j , j+1 ) != " " )
        {
        is_Space = false ;
        }
    }
    return ( is_Space );
}



/*--------------------------------------------------
  기능  : 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 ;



    if ( jsCheckNull(toCheck) )
          return false;



    for (j = 0 ; isIp && (j < toCheck.length) ; j++)
    {
          if ((toCheck.substring(j,j+1) < "0") || (toCheck.substring(j,j+1) > "9"))
          {
              if ( toCheck.substring(j,j+1) == "." )
                  if ( j == 0 )
                      isIp = false ;
              else
                  isIp = false ;
          }
    }



    return isIp;
}



/*--------------------------------------------------
  기능  : 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 ;



    if ( jsCheckNull(toCheck) )
          return false;



    for (j = 0 ; isNum && (j < toCheck.length) ; j++)
    {
          if ((toCheck.substring(j,j+1) < "0") || (toCheck.substring(j,j+1) > "9"))
          {
            if ( toCheck.substring(j,j+1) == "-" || toCheck.substring(j,j+1) == "+")
            {
                if ( j != 0 )
                {
                  isNum = false;
                }
            }
            else
      isNum = false;
    }
    }



    if (chkstr == "+" || chkstr == "-") isNum = false;



    return isNum;
}



/*--------------------------------------------------
  기능  : 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;



    var chkPoint = false;
    var chkMinus = false;



    if ( jsCheckNull(toCheck) )
    {
          return false;
    }



    for (j = 0 ; isFloat && (j < toCheck.length); j++)
    {
        if ( (toCheck.substring(j,j+1) < "0") || (toCheck.substring(j,j+1) > "9"))
        {



            if ( toCheck.substring(j,j+1) == "." )
            {
              if ( !chkPoint ) chkPoint = true ;
              else  isFloat = false ;
            }
            else if ( toCheck.substring(j,j+1) == "-" || toCheck.substring(j,j+1) == "+")
            {
              if ( ( j == 0 ) && ( !chkMinus ) ) chkMinus = true ;
              else isFloat = false;
            }
            else isFloat = false;
        }
    }



    return isFloat;
}



/*--------------------------------------------------
  기능  : 자릿수 check RETURN T/F
  INPUT  : toCheck  -> check data
  RETURN : true  -> number
          false -> not number
----------------------------------------------------*/
function jsCheckPoint( toCheck , Positive , Negative )
{
    var strPos = toCheck + "" ;
    var isPoint = true ;



    if ( jsCheckFloat ( toCheck ) )
    {



        var inx = strPos.indexOf(".") ;



        if ( inx == -1 )
        {
              if ( strPos.length > parseInt(Positive) )
                isPoint = false ;
              else
                isPoint = true ;
          }
          else
          {
              var pos = strPos.substring( 0, inx ) ;
              var nev = strPos.substring(inx + 1) ;



              if ( pos.length > parseInt(Positive) )
                    isPoint = false ;
              else if ( nev.length > parseInt(Negative) )
                    isPoint = false ;
              else
                    isPoint = true ;
          }
      }
      else if ( jsCheckNumber (toCheck) )
            isPoint = true  ;
      else
            isPoint = false ;



      return isPoint ;



}



////////////////////////////////////////////////////////////////n
////////////    DATE  VALIDATION  CHECK    //////////////////////
/////////////////////////////////////////////////////////////////



/*--------------------------------------------------
  기능  : calender에서 사용할 월별 배열를 만든다.
  INPUT  : 각 인자의 값
----------------------------------------------------*/
function jsMonthArray(m0,m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11)
{
      this[0] = m0;
      this[1] = m1;
      this[2] = m2;
      this[3] = m3;
      this[4] = m4;
      this[5] = m5;
      this[6] = m6;
      this[7] = m7;
      this[8] = m8;
      this[9] = m9;
      this[10] = m10;
      this[11] = m11;
}




/*--------------------------------------------------
  기능  : 년도를 check한다.
  INPUT  : toCheck
  RETURN : NONE
    MSG :
----------------------------------------------------*/



function jsCheckYYYY(toCheck)
{
  return ( ( toCheck.length == 4) && ( jsCheckNumber(toCheck)  ) && ( toCheck != "0000") );
}



/*--------------------------------------------------
  기능  : 년월을 check한다.
  INPUT  : toCheck
  RETURN : NONE
    MSG :
----------------------------------------------------*/



function jsCheckYYYYMM(toCheck)
{
    var isDate  = true ;



    if ( toCheck.length != 6 )
    {
          isDate = false ;
    }
    else
    {



          var yy = toCheck.substring(0,4) +"" ;
          var mm = toCheck.substring(4,6) +"" ;



          if ( !jsCheckYYYY(yy) )
              isDate = false ;
          else if ( !jsCheckMM(mm) )
              isDate = false ;
    }



    return isDate ;
}



/*--------------------------------------------------
  기능  : 월을 check한다.
  INPUT  : toCheck
  RETURN :
    MSG  :
----------------------------------------------------*/
function jsCheckMM(toCheck)
{
      return ((toCheck.length > 0) && (jsCheckNumber(toCheck)) && (0< eval(toCheck)) && (eval(toCheck) < 13));
}



/*--------------------------------------------------
  기능  : 일을 check한다.
  INPUT  : toCheck
  RETURN : NONE
    MSG :
----------------------------------------------------*/
function jsCheckDD(yyyy,mm,toCheck)
{
      var isYMD  = false;
      var monthDD= new jsMonthArray(31,28,31,30,31,30,31,31,30,31,30,31);
      var im    = eval(mm) - 1;
      if ( toCheck.length == 0 )  return false;
      if ( !jsCheckNumber(toCheck)  )  return false;
      var dd    = eval(toCheck);
      if ( ( (yyyy%4 == 0) && (yyyy%100 != 0) ) || (yyyy%400 == 0) )
      {
          monthDD[1] = 29;
      }
      if ( (0 < dd) && (dd <= monthDD[im]) ) isYMD = true;
          return isYMD;
}



/*--------------------------------------------------
  기능  : 날짜를 check한다.
  INPUT  : dateVal '20030321'
  RETURN : NONE
    MSG :
----------------------------------------------------*/
function jsCheckDate( dateVal )
{



    var isDate  = true ;



    if ( dateVal.length != 8 )
    {
          isDate = false ;
    }
    else
    {



          var yy = dateVal.substring(0,4) +"" ;
          var mm = dateVal.substring(4,6) +"" ;
          var dd = dateVal.substring(6,8) +"" ;



          if ( !jsCheckYYYY(yy) )
              isDate = false ;
          else if ( !jsCheckMM(mm) )
              isDate = false ;
          else if ( !jsCheckDD (yy,mm,dd) )
              isDate = false ;
    }



    return isDate ;



}



/*--------------------------------------------------
  기능  : 날짜에 년수를 더한다.
  INPUT  : startDt(YYYYMMDD), year
  RETURN : rtnValue : 날짜에 년수를 더한 날짜
          -1      : ERROR..!
          예) 20000110 + 1년 = 20010110
          예) 20000229 + 1년 = 20010228
    MSG :
----------------------------------------------------*/
function jsAddYear( startDt, plusYear ) {
var rtnValue = -1 ;



// input date의 날짜 체크
if ( !jsCheckDate(startDt) || !jsCheckNumber(plusYear) ) {
  rtnValue = -1 ;
  return rtnValue ;
}



var yyyy = startDt.substring(0,4) +"" ;
var mm  = startDt.substring(4,6) +"" ;
var dd  = startDt.substring(6,8) +"" ;



var newYyyy = (eval(yyyy) + eval(plusYear)) ;



// 윤달(29일) 인 경우 28일로 고침
// 예) 20000229 에 1년을 더하면 20000228
var isYoonYear = false ;
// 4 로 나누어 떨어지면 윤년
// 100 으로 나누어 떨어지면 윤년 아님
// 400 으로 나누어 떨어지면 윤년
if ( (eval(newYyyy)%4) == 0 ) isYoonYear = true ;
if ( (eval(newYyyy)%100) == 0 ) isYoonYear = false ;
if ( (eval(newYyyy)%400) == 0 ) isYoonYear = true ;



if ( (mm == '02') && (dd == '29') && !isYoonYear ) dd = '28' ;



rtnValue = newYyyy + mm + dd ;



return rtnValue ;
}



/*--------------------------------------------------
  기능  : 날짜에 월수를 더한다.
  INPUT  : startDt(YYYYMMDD), year
  RETURN : rtnValue : 날짜에 월수를 더한 날짜
          -1      : ERROR..!
          예) 20000110 + 3월  = 20000410
          예) 20000229 + 12월 = 20000228
    MSG :
----------------------------------------------------*/
function jsAddMonths( startDt, plusMonth ) {
var rtnValue = -1 ;



// input date의 날짜 체크
if ( !jsCheckDate(startDt) || !jsCheckNumber(plusMonth) ) {
  rtnValue = -1 ;
  return rtnValue ;
}



var yyyy = startDt.substring(0,4) +"" ;
var mm  = startDt.substring(4,6) +"" ;
var dd  = startDt.substring(6,8) +"" ;



var newMm = null;



// 월수를 더하여 1년이 넘는 경우
if ( (eval(mm) + eval(plusMonth)) > 12 ) {
  yyyy  = eval(yyyy) + 1 ;
  newMm = eval(mm) + eval(plusMonth) - 12 ;
} else {
  newMm = eval(mm) + eval(plusMonth) ;
}



// 윤년 처리
var isYoonYear = false ;
// 4 로 나누어 떨어지면 윤년
// 100 으로 나누어 떨어지면 윤년 아님
// 400 으로 나누어 떨어지면 윤년
if ( (eval(yyyy)%4) == 0 ) isYoonYear = true ;
if ( (eval(yyyy)%100) == 0 ) isYoonYear = false ;
if ( (eval(yyyy)%400) == 0 ) isYoonYear = true ;



// 윤년인 경우
if ( isYoonYear ) {
  if ( (newMm == '02') && ( dd=='30' || dd=='31' ) ) dd = '29' ;
// 평년인 경우
} else {
  if ( (newMm == '02') && ( dd=='29' || dd=='30' || dd=='31' ) ) dd = '28' ;
}



// 월의 자리수를 맞춘다. ( 2 월 -> 02 )
if ( eval(newMm) < 10 ) { newMm = "0" + newMm  } ;
rtnValue = yyyy + newMm + dd ;



return rtnValue ;
}



/*--------------------------------------------------
  기능  : 날짜와 날짜 사이의 일수를 리턴한다.
  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 + "";



    if ( ( chkstr == "") || ( chkstr == null ) )
    return( false );



    var mm = chkstr.substring( 0 ,2 );
    var ss = chkstr.substring( 3 ,5 );



    if (( mm <= "23" ) && ( mm >= "00" ))
    {
        if (( ss <= "60" ) && ( ss >= "00" ))
        {
            if ( chkstr.substring( 2 ,3 ) == ":")
            {
              return( true );
            }
        }
    }
    return( false );
}



/*--------------------------------------------------
  기능  : Check 주민등록번호 RETURN T/F
  INPUT  : toCheck
  RETURN : true  -> 올바른 번호
          false ->
----------------------------------------------------*/
function jsCheckJumin(toCheck) {
    var isJumin = true;
    if ( jsCheckNull(toCheck) ) {
          return false;
    } else if ( toCheck.length < 13 || toCheck.length > 13 ) {
          return false;
    } else if ( toCheck.substring(2,3) > "1" || toCheck.substring(6,7) > "2" || toCheck.substring(6,7) == "0" ) {
          return false;
    } else if ( toCheck.substring(2,3) == "1" && toCheck.substring(3,4) > "2" ){
          return false;
    } else if (!(toCheck.substring(4,6) >= "01" && toCheck.substring(4,6) <= "31")){
          return false;
    }
  for (j = 0; isJumin && (j < toCheck.length); j++) {
      if ( ( (toCheck.substring(j,j+1) < "0") || (toCheck.substring(j,j+1) > "9")) ) {
          isJumin = false;
      }
  }




  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)



  var check_digit=check_digit+b1*8+b2*9+b3*2+b4*3+b5*4+b6*5
  check_digit = check_digit%11
  check_digit = 11 - check_digit
  check_digit = check_digit%10
  if (check_digit != b7){
  isJumin = false;
  }



  return isJumin;
}



/*--------------------------------------------------
  기능  : Check 사업자 등록번호 RETURN T/F
  INPUT  : toCheck
  RETURN : true  -> 올바른 번호
          false ->
----------------------------------------------------*/
function jsCheckSaupJa(toCheck) {
    var isSaupJa = true;
    if ( jsCheckNull(toCheck) ) {
          return false;
    } else if ( toCheck.length < 10 || toCheck.length > 10 ) {
          return false;
    }
    for (j = 0; isSaupJa && (j < toCheck.length); j++) {
      if ( ( (toCheck.substring(j,j+1) < "0") || (toCheck.substring(j,j+1) > "9")) ) {
          isSaupJa = false;
      }
    }
    return isSaupJa;
}



/*--------------------------------------------------
  기능  : E-Mail를 check한다.
  INPUT  : emailVal
  RETURN : NONE
    MSG :
----------------------------------------------------*/
function jsCheckEmail( emailVal )
{
    if ( jsCheckNull(emailVal) ) return true;



    var inx = emailVal.indexOf("@") ;



    if ( inx <= 0 || inx==emailVal.length-1 ) return false;



    return true ;
}
/*--------------------------------------------------
  기능  :
  INPUT  : varNum : 실수
      varLeft : 정수부분 자리수
      varRight : 소수부분 자리수
  RETURN : true : 실수가 정/소수부분의 자리수를 초과하지 않는다.
      false : 실수가 정/소수부분의 자리수를 초과한다.
----------------------------------------------------*/
function jsCheckFloatType( varNum, varLeft, varRight ) {



var resultFlag = true ;



if ( varNum.charAt(0) == "-" ){
  varNum = varNum.substring(1,varNum.length);
}



var PointIndex = varNum.indexOf(".");



if ( PointIndex < 0 ){
  if ( varNum.length > varLeft )
  resultFlag = false ;
}else{
  var LeftLength = varNum.substring(0,PointIndex).length;
  var RightLength = varNum.substring(PointIndex+1, varNum.length ).length;



  if ( (LeftLength > varLeft) || (RightLength > varRight) )
  resultFlag = false ;
}



return resultFlag ;



}



/*--------------------------------------------------
  기능  :
  INPUT  : helpfile
  RETURN :
----------------------------------------------------*/
function jsShowHelp( helpfile )
{
      var helpstr = helpfile + "" ;
      var URL    = "" ;
      var cWin ;



      URL = "/help/"+helpfile+".html" ;



      cWin = window.open(URL,"help","toolbar=0,location=0,directories=0,status=0,menubar=1,scrollbars=1,resizable=1,width=560,height=320");



      cWin.focus();
}



/*--------------------------------------------------
  기능  : 한글이든 영문이든 제대로 갯수 체크를 해준다.
  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;
}



/*--------------------------------------------------
  기능  : FormObj에서 varObjName이 몇개 존재하는지 리턴한다.
  INPUT  : FormObj : FormName
    : varObjName : 객체명
  RETURN :
----------------------------------------------------*/
function jsGetObjCnt( FormObj, varObjName ){
var cnt = 0 ;
  for(var inx = 0; inx < FormObj.elements.length ; inx++ ) {
      if ( FormObj.elements[inx].name == varObjName ) {
      cnt++ ;
      }
  }
  return cnt;
}



/*--------------------------------------------------
  기능  :  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 ;



  if ( oneChar == "0" ) {
  // 아무일도 안함
  } else if ( oneChar == "1" ) {
  returnStr = returnStr + "일" ;
  isDone5 = true ;
  } else if ( oneChar == "2" ) {
  returnStr = returnStr + "이" ;
  isDone5 = true ;
  } else if ( oneChar == "3" ) {
  returnStr = returnStr + "삼" ;
  isDone5 = true ;
  } else if ( oneChar == "4" ) {
  returnStr = returnStr + "사" ;
  isDone5 = true ;
  } else if ( oneChar == "5" ) {
  returnStr = returnStr + "오" ;
  isDone5 = true ;
  } else if ( oneChar == "6" ) {
  returnStr = returnStr + "육" ;
  isDone5 = true ;
  } else if ( oneChar == "7" ) {
  returnStr = returnStr + "칠" ;
  isDone5 = true ;
  } else if ( oneChar == "8" ) {
  returnStr = returnStr + "팔" ;
  isDone5 = true ;
  } else if ( oneChar == "9" ) {
  returnStr = returnStr + "구" ;
  isDone5 = true ;
  }



  if ( ((numLen-inx) % 4) == 0 && oneChar != "0" ) {
  returnStr = returnStr + "천" ;
  } else if ( ((numLen-inx) % 4) == 3 && oneChar != "0" ) {
  returnStr = returnStr + "백" ;
  } else if ( ((numLen-inx) % 4) == 2 && oneChar != "0" ) {
  returnStr = returnStr + "십" ;
  } else if ( ((numLen-inx) % 4) == 1 ) {
  if ( numLen >= 17 && isDone1 && isDone5 ) {
    returnStr = returnStr + "경" ;
    isDone1 = false ;
  } else if ( numLen >= 13  && isDone2 && isDone5 ) {
    returnStr = returnStr + "조" ;
    isDone2 = false ;
  } else if ( numLen >= 9  && isDone3 && isDone5 ) {
    returnStr = returnStr + "억" ;
    isDone3 = false ;
  } else if ( numLen >= 5  && isDone4 && isDone5 ) {
    returnStr = returnStr + "만" ;
    isDone4 = false ;
  }
  }
}



return returnStr ;
}



/*--------------------------------------------------
  기능  : 파라메터로 넘어온 필드에 comma를 찍어서 comma 를 찍어서 채워준다.
      소수점 허용 안함
    예) 1000.00 -> 1,000    
  INPUT  :
  RETURN :
----------------------------------------------------*/
function jsMakeCurrency( varTextObj ) {
varTextObj.value = jsDeleteComma( varTextObj.value ) ;



var varLength = varTextObj.value.length ;
var varText  = "" ;
var isPointed = false ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) ) {
  varText = varText + varTextObj.value.substring(inx, inx+1) ;
  }
}



varTextObj.value = jsAddComma( varText ) ;
}




/*--------------------------------------------------
  기능  : 파라메터로 넘어온 필드에 comma를 찍어서 comma 를 찍어서 채워준다.
      소수점 허용 함    
    예) 1000.00 -> 1,000.00    
  INPUT  :
  RETURN :
----------------------------------------------------*/
function jsMakeForeignCurrency( varTextObj ) {
varTextObj.value = jsDeleteComma( varTextObj.value ) ;



var varLength = varTextObj.value.length ;
var varText  = "" ;
var isPointed = false ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) || (varTextObj.value.substring(inx, inx+1)=='.') ) {
  // 점이 안찍히고 처음으로 점이 들어왔을때
  if ( !isPointed && varTextObj.value.substring(inx, inx+1)=='.' ) {
    isPointed = true ;
    varText = varText + varTextObj.value.substring(inx, inx+1) ;
  // 숫자 일때
  } else if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) ) {
    varText = varText + varTextObj.value.substring(inx, inx+1) ;
  }



  }
}



varTextObj.value = jsAddComma( varText ) ;
}



/*--------------------------------------------------
  기능  : 파라메터로 넘어온 객체필드에 숫자만을 입력받게 해준다.
  INPUT  :
  RETURN :
----------------------------------------------------*/
function jsOnlyNumber( varTextObj ) {



var varLength = varTextObj.value.length ;
var varText  = "" ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) ) {
  varText = varText + varTextObj.value.substring(inx, inx+1) ;
  }
}



// 앞에 붙은 0 없애기 (예) 00200 -> 200
varLength = varText.length ;
var varTempReturnNumber = varText;
var varReturnNumber = "" ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( varTempReturnNumber.substring(inx, inx+1) == '0' ) {
  // '0' 이 넘어왔을 경우 '0'을 그대로 리턴해야 한다.
  if ( varLength == 1 ) varReturnNumber = "0" ;
  else if ( eval(jsDeleteComma(varTempReturnNumber)) == '0' ) {
    varReturnNumber = "0" ;
    break ;
  }
  } else {
  varReturnNumber = varTempReturnNumber.substring(inx, varLength+1) ;
  break ;
  }
}



varTextObj.value = varReturnNumber;
}



/*--------------------------------------------------
  기능  : 파라메터로 넘어온 필드에 숫자와 1개의 point만을 입력받게 해준다.
  INPUT  :
  RETURN :
----------------------------------------------------*/
function jsOnlyFloat( varTextObj ) {



varTextObj.value = jsDeleteComma( varTextObj.value ) ;



var varLength = varTextObj.value.length ;
var varText  = "" ;
var isPointed = false ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) || (varTextObj.value.substring(inx, inx+1)=='.') ) {
  // 점이 안찍히고 처음으로 점이 들어왔을때
  if ( !isPointed && varTextObj.value.substring(inx, inx+1)=='.' ) {
    isPointed = true ;
    varText = varText + varTextObj.value.substring(inx, inx+1) ;
  // 숫자 일때
  } else if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) ) {
    varText = varText + varTextObj.value.substring(inx, inx+1) ;
  }



  }
}



// 앞에 붙은 0 없애기 (예) 00200 -> 200
varLength = varText.length ;



var varReturnNumber = "" ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( varText.substring(inx, inx+1) == '0' ) {
  // '0' 이 넘어왔을 경우 '0'을 그대로 리턴해야 한다.
  if ( varLength == 1 ) varReturnNumber = "0" ;
  else if ( eval(jsDeleteComma(varText)) == '0' ) {
    varReturnNumber = "0" ;
    break ;
  }
  } else {
  varReturnNumber = varText.substring(inx, varLength+1) ;
  break ;
  }
}



varTextObj.value = varReturnNumber ;



}



/*--------------------------------------------------
  기능  : 파라메터로 넘어온 필드에 YYYY/MM형식으로 [/]를 찍어서 채워준다.
  INPUT  :
  RETURN :
----------------------------------------------------*/
function jsMakeYyyyMm( varTextObj ) {
varTextObj.value = jsDeleteChar( varTextObj.value, '/' ) ;



var varLength = varTextObj.value.length ;
var varText  = "" ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) ) {
  varText = varText + varTextObj.value.substring(inx, inx+1) ;
  }
}



if ( varText.length < 6 ) {
  varTextObj.value = varText ;
} else {
  varTextObj.value = varText.substring(0,4) + "/" + varText.substring(4,6) ;
}
}



/*--------------------------------------------------
  기능  : 파라메터로 넘어온 String에 날짜형식으로 [/]를 찍어서 리턴.
    예) 200103 -> 2001/03
  INPUT  :
  RETURN :
----------------------------------------------------*/
function jsMakeYyyyMmString( varText ) {
if ( varText.length != 6 || !jsCheckNumber( varText ) ) {
  return varText ;
}



var varReturnText  = "" ;



varReturnText = varText.substring(0,4) + "/" + varText.substring(4,6) ;



return varReturnText
}



/*--------------------------------------------------
  기능  : 파라메터로 넘어온 필드에 날짜형식으로 [/]를 찍어서 채워준다.      
    예) 20010301 -> 2001/03/01          
  INPUT  : Text Object
  RETURN :
----------------------------------------------------*/
function jsMakeDate( varTextObj ) {
varTextObj.value = jsDeleteChar( varTextObj.value, '/' ) ;



var varLength = varTextObj.value.length ;
var varText  = "" ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( jsCheckNumber(varTextObj.value.substring(inx, inx+1)) ) {
  varText = varText + varTextObj.value.substring(inx, inx+1) ;
  }
}



if ( varText.length < 8 ) {
  varTextObj.value = varText ;
} else {
  varTextObj.value = varText.substring(0,4) + "/" + varText.substring(4,6) + "/" + varText.substring(6,8) ;
}
}



/*--------------------------------------------------
  기능  : 파라메터로 넘어온 String에 날짜형식으로 [/]를 찍어서 채워준다.      
    예) 20010301 -> 2001/03/01          
  INPUT  :
  RETURN :
----------------------------------------------------*/
function jsMakeDateString( varText ) {
if ( varText.length != 8 || !jsCheckNumber( varText ) ) {
  return varText ;
}



var varReturnText  = "" ;



varReturnText = varText.substring(0,4) + "/" + varText.substring(4,6) + "/" + varText.substring(6,8) ;



return varReturnText
}



/*--------------------------------------------------
  기능  : 숫자를 받아서 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++ ;



  // 소수점 찍기
  if ( varCnt == 4 ) {
  varTempReturnNumber = varOverPoint.substring( inx, inx+1 ) + "," + varTempReturnNumber ;
  varCnt = 1 ;
  // 소수점 안찍기
  } else {
  varTempReturnNumber = varOverPoint.substring( inx, inx+1 ) + varTempReturnNumber ;
  }



}



// 앞에 붙은 0 없애기 (예) 00200 -> 200
varLength = varTempReturnNumber.length ;
var varReturnNumber = "" ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( varTempReturnNumber.substring(inx, inx+1) == '0' ) {
  // '0' 이 넘어왔을 경우 '0'을 그대로 리턴해야 한다.
  if ( varLength == 1 ) varReturnNumber = "0" ;
  else if ( eval(jsDeleteComma(varTempReturnNumber)) == '0' ) {
    varReturnNumber = "0" ;
    break ;
  }
  } else {
  varReturnNumber = varTempReturnNumber.substring(inx, varLength+1) ;
  break ;
  }
}



// 소수점 이하 붙이기
if ( isPointed ) {
  varReturnNumber = varReturnNumber + "." + varUnderPoint ;
}



// 음수 붙이기
if ( negativeFlag ) {
  varReturnNumber = "-" + varReturnNumber ;
}



return varReturnNumber ;



}



/*--------------------------------------------------
  기능  : 숫자를 받아서 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++ ;



  // 소수점 찍기
  if ( varCnt == 4 ) {
  varTempReturnNumber = varOverPoint.substring( inx, inx+1 ) + "," + varTempReturnNumber ;
  varCnt = 1 ;
  // 소수점 안찍기
  } else {
  varTempReturnNumber = varOverPoint.substring( inx, inx+1 ) + varTempReturnNumber ;
  }



}



// 앞에 붙은 0 없애기 (예) 00200 -> 200
varLength = varTempReturnNumber.length ;
var varReturnNumber = "" ;
for ( var inx = 0 ; inx < varLength ; inx++ ) {
  if ( varTempReturnNumber.substring(inx, inx+1) == '0' ) {
  } else {
  varReturnNumber = varTempReturnNumber.substring(inx, varLength+1) ;
  break ;
  }
}



// 소수점 이하 붙이기
if ( varUnderPoint.length == 0 ){
  varReturnNumber = varReturnNumber + "." + "00" ;
}else if ( varUnderPoint.length == 1 ){
  varReturnNumber = varReturnNumber + "." + varUnderPoint + "0&
추천추천 : 643 추천 목록
번호 제목
3,035
 아이프레임(iframe) 비율 유지하면서 크기 조절하는 방법
3,034
 PHP 배열에서 무작위로 하나 뽑아주는 array rand() 함수
3,033
 PHP 정규식 정리
3,032
 PHP 정규식을 활용한 태그 및 특정 문자열 제거 및 추출 방법
3,031
 php 크롤링 또는 파싱 함수, 정규식 모음
3,030
 제이쿼리 기본 명령어
3,029
 웹페이지 가로 모드세로 모드 인식하기
3,028
 모바일 웹 화면 강제 회전(가로모드 고정)
3,027
 [HTML5]에서 frameset 대체 방법과 iframe 속성
3,026
 HTML <Audio> 사용법
3,025
 윈도우10 시스템파일 손상 (초간단 오류 복구방법!!)
3,024
 PHP 파일 존재 여부 파악하기(로컬 파일 존재 및 원격지 파일 존재)
3,023
 [CSS] 박스 세로 가운데 중앙 정렬 6가지
3,022
 CSS Layout 수평 & 수직 정렬
3,021
 여러 도메인들 간 쿠키 공유하기
3,020
 태그 사이에 있는 텍스트를 추출
3,019
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,018
 쿠키 생성,가져오기,삭제
3,017
 사용자 함수 모음
3,016
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,015
 [HTML5] <video> - DOM으로 제어하기
3,014
 HTML5 video 태그에서 영상 좌우반전
3,013
 PHP - 특정 태그 및 문자열 추출, 제거
3,012
 [PHP] define과 defined의 차이
3,011
 우클릭 완벽차단 스크립트
목록
뮤직트로트 부산광역시 부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.