Extjs 필드 validation관련-전화번호,사업자,이메일


전화번호 밸리데이션
{
name : 'tel', // 전화번호
fieldLabel : "TEL",
maxLength : 20,
enforceMaxLength: true, // 입력란 길이 제한
regex: /^[0-9,-]{0,30}$/,
regexText: '전화번호는 숫자와 - 를 입력 할 수 있습니다.',
   validator: function(v) {
        return /^[0-9,-]{0,30}$/.test(v)?true:"NOTICE";
   }
}


사업자번호 밸리데이션

{
name : 'bsno', // 사업자번호
fieldLabel : "BSNO",
maxLength : 12,
enforceMaxLength: true, // 입력란 길이 제한
readOnly : false,
   regex: /^[0-9]{3}[\- ]?[0-9]{2}[\- ]?[0-9]{5}$/,
       regexText: '사업자번호는 숫자와 - 를 입력할 수 있습니다.',
   validator: function(v) {
        return /^[0-9]{3}[\- ]?[0-9]{2}[\- ]?[0-9]{5}$/.test(v)?true:"NOTICE";
   },
       listeners: {
       change:function(me,newVal,oldVal){
        if(typeof(oldVal)!='undefined' && newVal.length <= oldVal.length){
        var nval = newVal.replace(/-/g,"");
        if(nval.length <= 3){
        }else
        if(nval.length <= 5){
        nval = nval.slice(0,3)+'-'+nval.slice(3,5);
        }else{
        nval = nval.slice(0,3)+'-'+nval.slice(3,5)+'-'+nval.slice(5,10);
        }

        me.setValue(nval);
        }else{
        if(newVal.length === 3){
        me.setValue(newVal+'-');
        }
        if(newVal.length === 6){
        me.setValue(newVal+'-');
        }
        }
       }
       }
}

이메일 밸리데이션
{
name : 'email1', // 발주_연락처1
fieldLabel : '발주메일',
vtype : 'email',
maxLength : 50,
enforceMaxLength: true, // 입력란 길이 제한
readOnly : false,
regex:  /^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/,
regexText: '이메일주소는 이메일 형식으로만 입력이 가능합니다. ex) test@test.com',
   validator: function(v) {
        return /^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/.test(v)?true:"NOTICE";
   }
}

댓글

가장 많이 본 글