전화번호,휴대전화 검사 / 자동"-"넣기

/**
* 전화번호
*/
function SetTelFormat(obj)
{
  val = obj.value;
  if(val.length < 8) 
  {
    obj.value = "";
    obj.focus();
    alert("올바른 전화번호를 입력하세요.");
    return false;
  }
  str = "";
  for(i=0; i<val.length; i++) 
  {
    _val = val.substring(i,i+1);
    if(_val.search(/[0-9]/) == false) 
    {
      str = str+_val;
    }
  }

  if(str.length == 8) 
  {
    var pattern15xx = /^(1544|1566|1577|1588|1644|1688)-?([0-9]{4})$/;
    if(!pattern15xx.exec(str)) 
    {
      obj.value = "";
      obj.focus();
      alert("올바른 전화번호를 입력하세요.");
      return false;
    }
    obj.value = str.substring(0,4)+"-"+str.substring(4);
    return true;
  }
  mobilepattern = /^(01[016-9])/
  if(mobilepattern.exec(str)) 
  {
    var pattern = /^(01[016-9])-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$/;
    if(!pattern.exec(str)) 
    {
      obj.value = "";
      obj.focus();
      alert("올바른 휴대전화번호를 입력하세요.");
      return false;
    }
    if(str.length == 11) 
    {
      obj.value = str.substring(0,3)+"-"+str.substring(3,7)+"-"+str.substring(7);
    }else 
    {
      obj.value = str.substring(0,3)+"-"+str.substring(3,6)+"-"+str.substring(6);
    }
  }else 
  {
    var pattern = /^(0[2-8][0-5]?|01[01346-9])-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$/;
    if(!pattern.exec(str)) 
    {
      alert("올바른 전화번호를 입력하세요.");
      obj.value = "";
      obj.focus();
      return false;
    }
    if(str.substring(0,2) == "02") 
    {
      if(str.length == 10) 
      {
        obj.value = str.substring(0,2)+"-"+str.substring(2,6)+"-"+str.substring(6);
      }else 
      {
        obj.value = str.substring(0,2)+"-"+str.substring(2,5)+"-"+str.substring(5);
      }
    }else if(str.substring(0,2) == "0505") 
    {
      if(str.length == 12) 
      {
        obj.value = str.substring(0,4)+"-"+str.substring(4,4)+"-"+str.substring(8);
      }else 
      {
        obj.value = str.substring(0,4)+"-"+str.substring(4,3)+"-"+str.substring(7);
      }
    }else 
    {
      if(str.length == 11) 
      {
        obj.value = str.substring(0,3)+"-"+str.substring(3,7)+"-"+str.substring(7);
      }else 
      {
        obj.value = str.substring(0,3)+"-"+str.substring(3,6)+"-"+str.substring(6);
      }
    }
  }
  return true;
}

/**
* 휴대전화번호
*/
function SetMobileFormat(obj)
{
    val = obj.value;
  if(val.length < 8) 
  {
    obj.value = "";
    obj.focus();
    alert("올바른 전화번호를 입력하세요.");
    return false;
  }
  str = "";
  for(i=0; i<val.length; i++) 
  {
    _val = val.substring(i,i+1);
    if(_val.search(/[0-9]/) == false)
    {
      str = str+_val;
    }
  }
    mobilepattern = /^(01[016-9])/
  if(mobilepattern.exec(str)) 
  {
    var pattern = /^(01[016-9])-?([1-9]{1}[0-9]{2,3})-?([0-9]{4})$/;
    if(!pattern.exec(str)) 
    {
      obj.value = "";
      obj.focus();
      alert("올바른 휴대전화번호를 입력하세요.");
      return false;
    }
    if(str.length == 11) 
    {
      obj.value = str.substring(0,3)+"-"+str.substring(3,7)+"-"+str.substring(7);
    }else 
    {
      obj.value = str.substring(0,3)+"-"+str.substring(3,6)+"-"+str.substring(6);
    }
  }
}


'Javascript' 카테고리의 다른 글

DOM 프로퍼티  (0) 2009.11.04
에러처리  (0) 2009.10.16
수학관련 함수  (0) 2009.01.08
fieldset 그룹박스  (0) 2008.12.26
Trim()  (0) 2008.12.13