작성자: Prodigal 편집자
출처:http://bbs.51js.com/thread-68161-1-1.html
//Form Validation Class
function ValidatorClass()
{
var IsError = false;
//이름을 확인하면 한자, 영문, 숫자, 밑줄만 입력 가능합니다.
this.ChkName = function(obj,msg)
{
if (IsError) 반환
if (obj.value.Trim().length }
//이메일 주소 확인
this.ChkEmail = function(obj,msg)
{
if (IsError) return
if (!/ ^w @ w .(?:com|cn|org|net|cc|tv|info|com.cn|net.cn|org.cn|gov.cn)$/i.test(obj.value.Trim( ))) ErrorHandle(obj,msg);
}
//장소 이름을 확인하세요. 중국어로만 가능하며 비워 둘 수 없습니다.
this.ChkPlace = function(obj,msg)
{
if (IsError) return;
if (obj.value.Trim().length }
//상세 주소 확인
this.ChkAddress = function (obj,msg)
{
if (IsError) return;
if ( obj.value.Trim().length }
//이메일 인코딩 확인
this.ChkPostNumber = function (obj,msg)
{
if (IsError) return;
if(!(/^d{6}$/.test(obj.value.Trim()))) ErrorHandle(obj, msg);
//휴대폰 번호 확인
this.ChkMobile = function (obj,msg)
{
if (IsError) return
if (! (/^(?:13d| 159)-?d{5}(d{3}|*{3})$/.test(obj.value.Trim()))) ErrorHandle(obj,msg); 🎜> }
//유선전화 번호 확인
this.ChkPhone = function (obj,msg)
{
if (IsError)
if (!((/ ^d{3,4}- ?d{4,5}(d{3}|*{3})$/.test(obj.value.Trim()))) ErrorHandle(obj,msg)
}
//양식 이벤트 제출
this.Submit = function (Form,msg)
{
if (IsError) return
if (msg) Alert(msg) );
Form.submit ();
}
//오류 처리
function ErrorHandle(obj,msg)
{
Alert(msg); IsError = true;
obj .focus();
}
}
응용 사례:
function ChkForm()
{
var Form = document.TestForm; > var Validator = new ValidatorClass() ;
Validator.ChkName(Form.ZD_UserName,"주문자의 이름이 잘못되었습니다!")
Validator.ChkEmail(Form.ZD_Email,"주문자의 이메일 주소가 잘못되었습니다!" );
Validator.ChkPlace (Form.ZD_Province,"주문자의 도시는 불법입니다!")
Validator.ChkPlace(Form.ZD_City,"주문자의 도시는 불법입니다!"); > Validator.ChkAddress(Form.ZD_Address,"주문자의 주소가 잘못되었습니다!")
Validator.ChkPostNumber(Form.ZD_Zip,"주문자의 우편번호가 잘못되었습니다!")
Validator.ChkMobile(Form .ZD_Mobile,"주문자의 휴대폰 번호가 불법입니다!")
Validator.ChkPhone(Form.ZD_Phone,"주문자의 유선 전화번호가 불법입니다!")
Validator.Submit(Form,"인증 성공) !" ");
}