亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? validator.js

?? 選擇和管理有價(jià)值客戶及其關(guān)系的一種商業(yè)策略
?? JS
字號(hào):
Validator = {
Require : /.+/,
Email : /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,
Phone :/^[0-9]\d{2,13}$/,
SubPhone : /^\d{1,8}$/,
Position : /^\d{1,8}$/,
Mobile : /^((\(\d{3}\))|(\d{3}\-))?13\d{9}$/,
Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/,
IdCard : /^\d{15}(\d{2}[A-Za-z0-9])?$/,
/*******add by zhangbo*******/
IP : /^(([1][0-9][0-9])|([2][0-4][0-9])|([2][5][0-5])|([0-9][0-9])|([0-9]))\.(([1][0-9][0-9])|([2][0-4][0-9])|([2][5][0-5])|([0-9][0-9])|([0-9]))\.(([1][0-9][0-9])|([2][0-4][0-9])|([2][5][0-5])|([0-9][0-9])|([0-9]))\.(([1][0-9][0-9])|([2][0-4][0-9])|([2][5][0-5])|([0-9][0-9])|([0-9]))$/,
ValueKey : /^([^\=\;]+\=[0-9]{1,2}\;)*([^\=\;]+\=[0-9]{1,2})$/,
KeyValue : /^([0-9]{1,2}\=[^\=\;]+\;)*([0-9]{1,2}\=[^\=\;]+)$/,
YYYYMMDDHHDDSS : /^[12][0-9]{3}-([0][0-9]|[1][12])-([012][0-9]|[3][01]) ([01][0-9]|[2][0-3]):[0-5][0-9]:[0-5][0-9]$/,
YYYYMMDDHHDDSSORYYYYMMDD : /^([12][0-9]{3}-([0][0-9]|[1][12])-([012][0-9]|[3][01]) ([01][0-9]|[2][0-3]):[0-5][0-9]:[0-5][0-9])|([12][0-9]{3}-([0][0-9]|[1][12])-([012][0-9]|[3][01]))$/,
YYYYMMDD : /^[12][0-9]{3}-([0][0-9]|[1][12])-([012][0-9]|[3][01])$/,
HHDDSS : /^([01][0-9]|[2][0-3]):[0-5][0-9]:[0-5][0-9]$/,
HHDD : /^([01][0-9]|[2][0-3]):[0-5][0-9]$/,
HHDD1 : /^(([01][0-9]|[2][0-3]):[0-5][0-9])|\s$/,
TEXT : /^((\d)|([\u0391-\uFFE5])|([a-z])|([A-Z]))*$/,
/****************************/
Currency : /^\d+(\.\d+)?$/,
Number : /^\d+$/,
Zip : /^[1-9]\d{5}$/,
QQ : /^[1-9]\d{4,8}$/,
Integer : /^[-\+]?\d+$/,
Double : /^[-\+]?\d+(\.\d+)?$/,
English : /^[A-Za-z]+$/,
Chinese : /^[\u0391-\uFFE5]+$/,
UnSafe : /^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}<>\?\\\/\'\"]*)|.{0,5})$|\s/,
IsSafe : function(str){return !this.UnSafe.test(str);},
SafeString : "this.IsSafe(value)",
Limit : "this.limit(value.length,getAttribute('min'), getAttribute('max'))",
LimitB : "this.limit(this.LenB(value), getAttribute('min'), getAttribute('max'))",
LimitBT : "this.limit(this.LenBT(value), getAttribute('min'), getAttribute('max'))",
Date : "this.IsDate(value, getAttribute('min'), getAttribute('format'))",
/*******add by zhangbo*******/
NumberLen : "this.numberLen(value,getAttribute('min'), getAttribute('max'))",
Decimal:"this.decimal(value,getAttribute('dig'))",
/****************************/
Repeat : "value == document.getElementsByName(getAttribute('to'))[0].value",
Range : "getAttribute('min')*1 <= value*1 && value*1 <= getAttribute('max')*1",
RangeStr : "getAttribute('min') <= value && value <= getAttribute('max')",
Compare : "this.compare(value,getAttribute('operator'),getAttribute('to'))",
Custom : "this.Exec(value, getAttribute('regexp'))",
Group : "this.MustChecked(getAttribute('name'), getAttribute('min'), getAttribute('max'))",
ErrorItem : [document.forms[0]],
ErrorMessage : [""],
Validate : function(theForm, mode){
var obj = theForm || event.srcElement;
var count = obj.elements.length;
this.ErrorMessage.length = 1;
this.ErrorItem.length = 1;
this.ErrorItem[0] = obj;
for(var i=0;i<count;i++){

with(obj.elements[i]){
var _dataType = getAttribute("dataType");
var strtemp = _dataType==null?null:(_dataType.split(","))[0];
if(typeof(_dataType) == "object" || typeof(this[strtemp]) == "undefined") continue;

this.ClearState(obj.elements[i]);
if(getAttribute("require") == "false" && value == "") continue;

var arrdataType = _dataType.split(",");
var length =  arrdataType.length;
for (var j=0;j<length;j++){
var temp = 0;
switch(arrdataType[j]){
case "Date" :
case "Repeat" :
case "Range" :
case "RangeStr" :
case "Compare" :
case "Custom" :
case "Group" :
case "Limit" :
case "LimitB" :
case "LimitBT" :
case "SafeString" :
case "NumberLen":
case "Decimal":
if(!eval(this[arrdataType[j]])) {
this.AddError(i, getAttribute("msg"));
temp = 1;
}
break;
default :
if(!this[arrdataType[j]].test(value)){
this.AddError(i, getAttribute("msg"));
temp = 1;
}
break;
}
if (temp==1) {break;}
}
}
}
if(this.ErrorMessage.length > 1){
mode = mode || 1;
var errCount = this.ErrorItem.length;
switch(mode){
case 2 :
for(var i=1;i<errCount;i++)
this.ErrorItem[i].style.color = "red";
case 1 :
alert(this.ErrorMessage.join("\n"));
try{
this.ErrorItem[1].focus();
}catch(e){}
break;
case 3 :
for(var i=1;i<errCount;i++){
try{
var span = document.createElement("SPAN");
span.id = "__ErrorMessagePanel";
span.style.color = "red";
this.ErrorItem[i].parentNode.appendChild(span);
span.innerHTML = this.ErrorMessage[i].replace(/\d+:/,"*");
}
catch(e){alert(e.description);}
}
try{
this.ErrorItem[1].focus();
}catch(e){}
break;
default :
alert(this.ErrorMessage.join("\n"));
break;
}
return false;
}
return true;
},
limit : function(len,min, max){
min = min || 0;
max = max || Number.MAX_VALUE;
return min <= len && len <= max;
},
LenB : function(str){
return str.replace(/[^\x00-\xff]/g,"**").length;
},
LenBT : function(str){
	var v_temp = str.replace(/^\s+/g, '').replace(/\s+$/g, '');//del the blankspace, like trim().
	if(v_temp.length==0) str = v_temp;
	return str.replace(/[^\x00-\xff]/g,"**").length;
},
ClearState : function(elem){
with(elem){
if(style.color == "red")
style.color = "";
var lastNode = parentNode.childNodes[parentNode.childNodes.length-1];
if(lastNode.id == "__ErrorMessagePanel")
parentNode.removeChild(lastNode);
}
},
AddError : function(index, str){
this.ErrorItem[this.ErrorItem.length] = this.ErrorItem[0].elements[index];
this.ErrorMessage[this.ErrorMessage.length] = this.ErrorMessage.length + ":" + str;
},
Exec : function(op, reg){
return new RegExp(reg,"g").test(op);
},
numberLen : function(value,min,max){
  var re = new RegExp("^[0-9]{"+min+","+max+"}$","g");
  return re.test(value);
},
decimal : function(value,dig){
  var re = new RegExp("^[-+]?\\d+(.\\d{0,"+dig+"})?$","g");
   return re.test(value);
},
compare : function(op1,operator,op2){
switch (operator) {
case "NotEqual":
return (op1 != op2);
case "GreaterThan":
return (op1 > op2);
case "GreaterThanEqual":
return (op1 >= op2);
case "LessThan":
return (op1 < op2);
case "LessThanEqual":
return (op1 <= op2);
default:
return (op1 == op2);
}
},
MustChecked : function(name, min, max){
var groups = document.getElementsByName(name);
var hasChecked = 0;
min = min || 1;
max = max || groups.length;
for(var i=groups.length-1;i>=0;i--)
if(groups[i].checked) hasChecked++;
return min <= hasChecked && hasChecked <= max;
},
IsDate : function(op, formatString){
formatString = formatString || "ymd";
var m, year, month, day;
switch(formatString){
case "ymd" :
m = op.match(new RegExp("^((\\d{4})|(\\d{2}))([-./])(\\d{1,2})\\4(\\d{1,2})$"));
if(m == null ) return false;
day = m[6];
month = m[5]--;
year = (m[2].length == 4) ? m[2] : GetFullYear(parseInt(m[3], 10));
break;
case "dmy" :
m = op.match(new RegExp("^(\\d{1,2})([-./])(\\d{1,2})\\2((\\d{4})|(\\d{2}))$"));
if(m == null ) return false;
day = m[1];
month = m[3]--;
year = (m[5].length == 4) ? m[5] : GetFullYear(parseInt(m[6], 10));
break;
default :
break;
}
if(!parseInt(month)) return false;
month = month==12 ?0:month;
var date = new Date(year, month, day);
return (typeof(date) == "object" && year == date.getFullYear() && month == date.getMonth() && day == date.getDate());
function GetFullYear(y){return ((y<30 ? "20" : "19") + y)|0;}
}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色屁屁一区二区| 成人黄色在线视频| 91精品国产综合久久蜜臀| 午夜日韩在线电影| 69久久99精品久久久久婷婷 | 亚洲同性同志一二三专区| av色综合久久天堂av综合| 亚洲三级在线播放| 欧美色涩在线第一页| 免费的成人av| 国产亚洲欧洲997久久综合| 成+人+亚洲+综合天堂| 亚洲免费视频成人| 欧美一区二区三区免费视频 | 欧美日韩一区不卡| 日本人妖一区二区| 中文字幕电影一区| 欧美性猛片aaaaaaa做受| 蜜臀91精品一区二区三区| 久久久久久久综合狠狠综合| 99精品视频免费在线观看| 亚洲成av人片在线| 久久久久99精品国产片| 色综合天天在线| 免费成人av在线| 中文字幕亚洲不卡| 欧美一区二区三级| 99热在这里有精品免费| 首页综合国产亚洲丝袜| 欧美激情综合在线| 欧美夫妻性生活| 成人av在线播放网站| 性做久久久久久免费观看欧美| 久久人人爽爽爽人久久久| 色哟哟国产精品| 国产一区二区三区四区五区美女 | 在线综合视频播放| 成人av电影在线| 美日韩黄色大片| 亚洲精品视频自拍| 久久久国产精华| 欧美日韩国产综合一区二区三区| 黄色精品一二区| 亚洲一区二区三区在线播放| 久久精品一区二区| 777午夜精品视频在线播放| www.99精品| 国产精品一区二区久久精品爱涩| 天天免费综合色| 亚洲另类色综合网站| 国产人成一区二区三区影院| 欧美一区三区二区| 欧美色综合天天久久综合精品| 国产成人精品1024| 久久精品国产在热久久| 亚洲一区二区在线免费观看视频| 国产精品入口麻豆原神| 久久美女艺术照精彩视频福利播放| 欧美日本韩国一区二区三区视频 | 玖玖九九国产精品| 亚洲午夜激情网站| 亚洲视频一区二区免费在线观看| 国产亚洲精品超碰| 欧美大片顶级少妇| 欧美日韩亚洲国产综合| 91福利国产成人精品照片| proumb性欧美在线观看| 国产69精品久久久久毛片| 国产真实乱子伦精品视频| 免费在线观看日韩欧美| 日韩精品一级中文字幕精品视频免费观看| 一区二区三区四区av| 亚洲欧美另类小说视频| 亚洲私人影院在线观看| 日韩理论片一区二区| 最新久久zyz资源站| 国产精品初高中害羞小美女文| 国产精品区一区二区三区| 国产日产欧产精品推荐色| 欧美精彩视频一区二区三区| 国产精品网站在线播放| 中文字幕精品一区| 国产精品成人午夜| 亚洲视频一区二区在线| 亚洲一区二区三区小说| 午夜日韩在线电影| 美女网站一区二区| 国产乱理伦片在线观看夜一区| 国产精品亚洲一区二区三区在线| 国产不卡视频在线观看| 成人a级免费电影| 91麻豆福利精品推荐| 欧美日韩中文字幕一区二区| 在线不卡中文字幕播放| 欧美大黄免费观看| 久久久精品国产免大香伊| 中文字幕第一区第二区| 亚洲天堂av一区| 午夜精品久久久久久久蜜桃app| 爽好久久久欧美精品| 国产中文一区二区三区| 波多野洁衣一区| 欧美午夜电影一区| 日韩女优电影在线观看| 精品88久久久久88久久久| 国产精品视频看| 午夜精品福利在线| 国产又黄又大久久| 99久久99久久精品国产片果冻| 欧美亚洲动漫精品| 日韩免费在线观看| 国产精品欧美久久久久无广告| 伊人夜夜躁av伊人久久| 免费看日韩a级影片| 高清在线成人网| 欧美日韩亚洲综合一区二区三区| 久久伊人蜜桃av一区二区| 亚洲日本一区二区三区| 日韩av二区在线播放| www.成人网.com| 日韩欧美综合一区| 日韩理论片一区二区| 美女国产一区二区三区| 暴力调教一区二区三区| 欧美电影一区二区| 国产精品福利影院| 精品午夜一区二区三区在线观看| 91免费视频观看| 日韩美一区二区三区| 亚洲男人天堂av网| 国产精品99久久久久久宅男| 欧美午夜一区二区| 欧美国产乱子伦| 日本aⅴ免费视频一区二区三区| 成年人国产精品| 精品久久久久久无| 亚洲一区二区三区四区在线 | 国产亚洲精品超碰| 奇米影视一区二区三区小说| eeuss影院一区二区三区| 日韩一区二区三区在线视频| 亚洲精品欧美专区| 国产成人丝袜美腿| 欧美岛国在线观看| 日韩1区2区3区| 在线日韩av片| 中文字幕日韩av资源站| 国产美女精品人人做人人爽| 欧美乱妇20p| 亚洲香蕉伊在人在线观| 成人免费视频视频在线观看免费| 日韩三级免费观看| 性做久久久久久| 色av成人天堂桃色av| 国产精品短视频| 成人午夜av影视| 久久精品视频免费观看| 国内精品伊人久久久久影院对白| 欧美久久久久久蜜桃| 亚洲一区二区综合| 欧美日韩免费观看一区二区三区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 国产成人亚洲综合a∨婷婷图片| 欧美精品一区二区三区蜜桃视频| 久久精品国产精品亚洲精品| 欧美一区二区三区公司| 免费在线观看不卡| 91精品午夜视频| 久久精工是国产品牌吗| 精品国产一区久久| 国产一区在线看| 久久久www成人免费毛片麻豆| 国产真实乱偷精品视频免| 2023国产精品视频| 国产麻豆9l精品三级站| 欧美精品一区二区三区久久久| 激情偷乱视频一区二区三区| 久久婷婷一区二区三区| 国产精品一区二区久久不卡| 亚洲国产成人自拍| 91影院在线免费观看| 一区二区三区精品视频在线| 欧美日韩小视频| 美女www一区二区| 国产午夜精品一区二区三区嫩草 | 色综合色综合色综合| 亚洲综合一区二区| 91精品欧美福利在线观看| 秋霞成人午夜伦在线观看| 精品美女一区二区| 风间由美一区二区三区在线观看| 国产精品久久久久7777按摩 | 婷婷久久综合九色综合绿巨人| 51午夜精品国产| 国产在线精品一区二区三区不卡 | 亚洲日本中文字幕区| 9191久久久久久久久久久| 久草在线在线精品观看| 欧美国产丝袜视频| 欧美欧美欧美欧美|