>웹 프론트엔드 >JS 튜토리얼 >Alimama_Form 특수 효과에서 발견된 몇 가지 좋은 양식 유효성 검사 기능

Alimama_Form 특수 효과에서 발견된 몇 가지 좋은 양식 유효성 검사 기능

WBOY
WBOY원래의
2016-05-16 19:08:561348검색

//---------
// 현재 브라우저가 Netscape인지 확인하세요
//---------
function isNetscape(){
app=navigator. appName.substring(0,1);
if (app=='N') return true
else {return false;}
}

//---- ---
// 현재 양식 양식 저장(IE 브라우저에만 적용 가능)
//---------
function formSaveCheck(fileName){
if(isNetscape() ){alert("죄송합니다. 이 기능은 지원되지 않습니다.")}
else document.execCommand('SaveAs',null,fileName)
}

//------ -
// 데이터 유효성 확인
//---------
function isValidReg( chars){
var re=/|[|]|{ | }| 『|』|※|○|●|◎|§|Δ|▲|☆|★|◇|◆|□|▼|㊣|﹋|⊕|⊙|〒|ㄅ|ㄆ|
ㄇ |ㄈ|ㄉ|ㄊ|ㄋ|ㄌ|ㄍ|ㄎ|ㄏ|ㄐ|ㄑ|ㄒ|ㄓ|ㄔ|ㄕ|ㄖ|ㄗ|ㄘ|ㄙ|ㄚ|ㄛ|ㄜ|ㄝ|ㄞ|ㄟ| |ㄣ|ㄤ|ㄥ|ㄦ|ㄧ|ㄨ|ㄩ
|■|▄|▆|*|@|#|^|\/
if (re.test( chars) == true ) {
false 반환
}else{
true 반환
} }
}

//---------
// 확인 데이터의 길이가 적법합니까?
//-------
function isValidLength(chars, len) {
if (chars.length > len) {
return false;
}
true를 반환합니다.
}

//---------
// URL의 유효성을 확인합니다
//---- -- -
function isValidURL( chars ) {
//var re=/^([hH][tT]{2}[pP]://|[hH][tT]{2}[pP ][ sS]://)((((w (-*w*) ).) ((com)|
(net)|(edu)|(gov)|(org)|(biz)| (에어로 )|(coop)|(정보)|(이름)|(pro)|(박물관))(.([a-z]{2}))?)|(w (-
*w*) ).(cn)))$/;
var re=/^([hH][tT]{2}[pP]://|[hH][tT]{2}[pP][sS] :/ /)(S .S )$/
//var re=/^([hH][tT]{2}[pP]://|[hH][tT]{2}[pP ][ sS]://)(((((w (-*w*) ).) ((com)|
(net)|(edu)|(gov)|(org)|(biz) |( 에어로)|(coop)|(정보)|(이름)|(pro)|(박물관)|(cn)|(tv)|(hk))(.([a-z]
{2}) )? )|((w (-*w*) ).(cn)))((/|?)S*)*)$/
if (!isNULL(chars)) {
문자 = jsTrim (chars);
if (chars.match(re) == null)
return false
else
return true; /---------
// 숫자의 유효성을 확인하세요
//---------
function isValidDecimal( chars ) {
var re=/^ d*.?d{1,2}$/
if (chars.match(re) == null)
return false
else
return true; >
//---------
// 숫자의 유효성을 확인하세요
//----------
function isNumber( chars ) {
var re=/^d*$/;
if (chars.match(re) == null)
return false
else
return true; >//--------
// 우편번호 유효성 확인
//---------
function isValidPost( chars ) {
var re =/^d{6}$/
if (chars.match(re) == null)
return false
else
return true; >//--------
// 데이터에서 앞뒤 null 문자 제거
//--------
function jsTrim(value){
return value.replace(/(^s*)|(s*$)/g,"")
}

//---------
// 데이터가 비어 있는지 확인(데이터가 널 문자인 경우에도 NULL임)
//----- -- -
function isNULL(chars) {
if (chars == null)
return true
if (jsTrim(chars).length==0)
return true; 🎜> false 반환
}

//---------
// 이메일 유효성 확인
//---------
function checkEmail (fieldName, bMsg)
{
var emailStr = fieldName.value;

var emailPat=/^(. )@(. )$/
var SpecialChars=" \( \)
@,;:\\\"\.\[\]" var validChars="[^\s" SpecialChars "]"
var quotedUser="("[^" ]* ")"
var ipDomainPat=/^[(d{1,3}).(d{1,3}).(d{1,3}).(d{1,3})] $/
varatom=validChars ''
var word="("atom "|" quotedUser ")"
var userPat=new RegExp("^" word "(\." word ")* $" )
var domainPat=new RegExp("^"atom "(\."atom ")*$")

var matchArray=emailStr.match(emailPat)
if (matchArray= =null )
{
if (bMsg) Alert("이메일 주소가 잘못된 것 같습니다(@ 및 .을 확인하세요).")
return false
}
var user=matchArray[1]
var domain=matchArray[2]

// "user"가 유효한지 확인
if (user.match(userPat)==null)
{
if (bMsg ) warning ("이메일 주소가 잘못된 것 같습니다.")
// fieldName.focus();
return false
}

/* 이메일 주소가 IP인 경우 주소(기호
호스트 이름과 반대) IP 주소가 유효한지 확인하세요. */
var IPArray=domain.match(ipDomainPat)
if (IPArray!=null)
{
for (var i=1;i { if (IPArray[i]>255)
{
if (bMsg) Alert("대상 IP 주소는 다음과 같습니다. ")
return false
}
return true
}

// 도메인은 기호 이름
var domainArray=domain.match(domainPat)
if (domainArray==null)
{
if (bMsg) Alert("도메인 이름이 유효하지 않은 것 같습니다.")
return false
}

    /* 도메인 이름이 유효한 것 같지만 이제
    세 글자로 된 단어(com, edu, gov 등) 또는 두 글자로 된 단어
로 끝나는지 확인하세요. uk, nl),
    도메인 또는 국가 앞에 호스트 이름이 있어야 합니다. */

    var atomPat=new RegExp(atom,"g")
    var domArr=domain.match(atomPat)
    var len=domArr.length
    if (domArr[domArr. length-1].length3) 
    {
        //주소는 두 글자 또는 세 글자 단어로 끝나야 합니다.
        if (bMsg) alert("주소는 3자리 도메인 또는 2자리 국가로 끝나야 합니다.")
        false 반환
    }

    // 호스트가 있는지 확인하세요 도메인 앞에 이름을 붙입니다. if (len { if (bmsg) alert ( "이 주소가 호스트 이름에 누락되었습니다!") return false }
// if 여기까지는 모든 것이 유효합니다!
    true를 반환합니다.
}

//---------
// 判断是否为闰年
//---------
함수는 LeapYear(연도)입니다. {
  if (연도 % 4 != 0)
    false를 반환;
  if (연도 % 400 == 0)
    true를 반환합니다.
  if (연도 % 100 == 0)
    false를 반환합니다.
  반환 true;
}

//---------
// 校验日期적합법
//--------
함수 유효성 검사 날짜( 일,월,년)
{
    if ((일        false를 반환;

    if ((월>=1)&&(월        if (월 == 2) { ​​           if (isLeapYear(연도)) {
               if ( day                   return true;            } else {
                if (day                  true를 반환;                else
                   false를 반환합니다.
            }         } else if ((month==4)||(month==6)||(month==9)||(month==11)) {
           if (일                true를 반환합니다.
            else
               false를 반환;
        } else {             if (day               return true;
            else
               false를 반환;
        }
}

return false
}

//---------
// 데이터에 단일 바이트가 포함되어 있는지 확인
/ /---------
function isSingleByteString(str)
{
var rc = true
var j = 0, i = 0
for (i=0; i j = str.charCodeAt(i);
if (j>=128) {
rc =
break; > }
return rc;
}

var submitEvent
function checkDoubleSubmit(){
return submitEvent; -------
// 팝업 창
// 매개 변수: url - 팝업 창에는 URL의 내용이 표시됩니다.
//                                                 > 팝업창이 화면 중앙에 표시되는지 여부, 값은 true/false
// isRessible-팝업 창의 크기를 조정할 수 있는지 여부를 제어하며, 값은 true/false
// isScroll-control 팝업 창에 스크롤 막대가 있는지 여부, 값은 true/false입니다.
//---------
function popupWindow(url,w,h,isCenter,isRessible,isScroll) {
if (isNULL (url)) return;
var scrTop = 0;
var resize = "no"; 🎜> if (isCenter) {
scrLeft = (screen.width-w)/2;
scrTop = (screen.height-h)/2
}
if (isRessible) resize= "예";
if (isScroll) 스크롤 = "예";
window.open(url, 'popupWindow',
'height=' h ',width=' w ',top=' scrTop ',left=' scrLeft ' ,toolbar=no,menubar=no,scrollbars=' 스크롤
l ',resizing=' 크기 조정 ',location=no,status=no')
}

//--- -----
// 팝업창
// 매개변수: url-팝업창에 표시되는 URL의 내용
//             w-                                         ~ >// isCenter-팝업 창을 화면 중앙에 표시할지 여부를 제어하며 값은 true/false입니다.
// isRessible-팝업 창의 크기를 변경할 수 있는지 제어하며 값은 true입니다. /false
// isModal-팝업 창 제어 모달 대화 상자이든 비모달 대화 상자이든 값은 true/false
//----------
함수 popupModalWindow(url,w,h,isCenter,isRessible,isModal) {
if (isNULL(url)) return;
var scrLeft = 0;
var scrTop = 0; no";
var cnt = "no";
if (isCenter ) {
cnt="yes";
scrLeft = (screen.width-w)/2;
scrTop = (screen.height-h)/2;
}
if ( isRessible) resize="yes";
if (isModal)
window.showModalDialog(url, 'popupWindow',
'dialogWidth:' w 'px;dialogHeight:' h 'px;dialogLeft:' scrLeft 'px;dialogTop:' scrTop 'px;center:'
cnt ';help:no;resizing:' 크기 조정 ';status: no');
else
window.showModelessDialog(url, 'popupWindow',
'dialogWidth:' w 'px;dialogHeight:' h 'px;dialogLeft:' scrLeft 'px;dialogTop:' scrTop 'px;center:'
cnt ';help:no;resizing:' 크기 조정 ';status:no')
}

//---------
// 팝업창
// 매개변수: url - 팝업창에 표시되는 URL 내용
/ /                                                                                                                              팝업 창 🎜>// h-팝업 창의 높이
// isCenter-팝업 창을 화면 중앙에 표시할지 여부를 제어하며 값은 true/false
// IsRessible-팝업 창의 크기를 조정할 수 있는지 여부를 제어합니다. 값은 true/false입니다.
//   isScroll-팝업 창에 스크롤 막대가 있는지 여부를 제어합니다. 값은 true/false입니다.
/ /---------
function openWindowCenter(url,w,h){
var top=(window.screen.height-h)/2
var left=(window.screen) .width-w)/2;
var param='toolbar=no,menubar=no,scrollbars= yes,resizing=no,location=no, status=no,top='
param=param top ;
param=param ',left=';
param =param ',height=' h
param=param ',width=' w; var w=window.open (url,"",param)
if(w!=null && typeof (w)!="undefine"){
w.focus()
}
}


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.