欢迎光临
我们一直在努力

一个很强的验证脚本-ASP教程,ASP应用

建站超值云服务器,限时71元/月

var page_validationver = "125";

var page_isvalid = true;

var page_blocksubmit = false;

var msg="";

///验证入口

function page_clientvalidate()

{

var i;

for (i = 0; i < page_validators.length; i++) {

if(!validatorvalidate(page_validators[i]))

{

msgbox(page_validators[i]);

event.returnvalue = false;

return false;

}

}

}

function msgbox(val)

{

if(msg!="")

{

msg="(错误提示:"+msg+")";

}

alert(validatorerrormsg(val)+"\r\n"+msg);

}

///单个验证

function validatorvalidate(val) {

var control = validatorcontrol(val.controltovalidate);

value=validatorgetvalue(control);

if(!maxlength(val.maxlength,value)) return false;

flag=true;

if(value=="")

{

control.focus();

msg="文本框不能为空!";

return val.allownull=="true";

}

var datatype = val.datatype;

if(datatype=="empty")

{

flag= true;

}

else if(datatype =="string")

{

flag = isstring(value);

}

else if(datatype =="letter")

{

flag = isletter(value);

}

else if (datatype == "stringinteger") {

flag= isstringinteger(value);

}

else if (datatype == "integer") {

flag= isinteger(value);

}

else if(datatype =="chinese")

{

flag = ischinese(value);

}

else if(datatype =="unsignintger")

{

flag = isunsignintger(value);

}

else if(datatype == "double") {

flag = isdouble(value);

}

else if(datatype =="email")

{

flag = isemail(value);

}

else if(datatype =="ip")

{

flag = isip(value);

}

else if(datatype =="phone")

{

flag = isphone(value);

}

else if(datatype =="zip")

{

flag = iszip(value);

}

else if (datatype == "currency") {

flag = iscurrency(value);

}

else if (datatype == "date") {

flag = isdate(value);

}

else if(datatype =="time")

{

flag = istime(value);

}

else if (datatype == "datetime") {

flag = isdatetime(value);

}

else

{

flag = isother(value);

}

if(flag==false)

{

control.focus();

}

return flag;

}

///获取验证的错误消息

function validatorerrormsg(val)

{

return val.errormessage;

}

///获取控件对象

function validatorcontrol(id)

{

var control;

control = document.all[id];

return control

}

function validatorgetvalue(control) {

if (typeof(control.value) == "string") {

return control.value;

}

if (typeof(control.tagname) == "undefined" && typeof(control.length) == "number") {

var j;

for (j=0; j < control.length; j++) {

var inner = control[j];

if (typeof(inner.value) == "string" && (inner.type != "radio" || inner.status == true)) {

return inner.value;

}

}

}

else {

return validatorgetvaluerecursive(control);

}

return "";

}

function validatorgetvaluerecursive(control)

{

if (typeof(control.value) == "string" && (control.type != "radio" || control.status == true)) {

return control.value;

}

var i, val;

for (i = 0; i<control.children.length; i++) {

val = validatorgetvaluerecursive(control.children[i]);

if (val != "") return val;

}

return "";

}

function isinteger(val)

{

reg=/^[-+]?\d*$/;

msg="请输入阿拉伯数字!";

return check(val,reg);

}

function isdouble(val)

{

reg=/^[-+]?\d+(\.\d+)?$/;

msg="请输入数字,如:5.63";

return check(val,reg);

}

function isemail(val)

{

reg=/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;

msg="请输入合法的email地址";

return check(val,reg);

}

function iscurrency(val)

{

reg=/^[$¥]?(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$/;

msg="请输入金额,或以美元或人民币符号开头的数字,小数保留两位,如:¥1,000.00";

return check(val,reg);

}

function isstring(val)

{

//reg=/^[a-za-z0-9_]+$/;

reg=/^\w+$/;

msg="请输入规则字符串!";

return check(val,reg);

}

function isstringinteger(val)

{

reg=/^[a-za-z][0-9]+$/;

msg="请输入首位是字母其他为数字的字符串,如:a0001";

return check(val,reg);

}

function iszip(val)

{

reg=/^\d{6}$/;

msg="请输入邮政编码,如:518000";

return check(val,reg);

}

function isip(val)

{

reg=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/

var r = val.match(reg);

msg="请输入合法的ip地址,每段是0-255的整数!";

if(r==null) return false;

if(r[1]<256 && r[2] <256 && r[3]<256 && r[4]<256)

return true;

return false;

}

function isphone(val)

{

//reg=/((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}/;

reg=/^[1-9]\d{1,3}-\d{7,8}$|^[1-9]\d{9,10}$|^[1-9]\d{1,3}-\d{7,8}-\d{1,4}$/;

msg="请输入电话号码,如755-88888888-1234!";

return check(val,reg);

}

function isunsignintger(val)

{

reg=/^\d*$/;

msg="请输入阿拉伯数字!";

return check(val,reg);

}

function isletter(val)

{

reg=/^[a-za-z]+$/;

msg="请输入英文字母!";

return check(val,reg);

}

function ischinese(val)

{

reg=/^[\w\u00ff-\ufffd]+$/ ///[^(!-\/)(\:-@)(\][-\)]+$/g;

msg="请输入字!";

return check(val,reg);

}

function isdate(val)

{

//reg=/([1-9][0-9]{3})-([(0|1) 0-9]{2})-([0-9]{2})/;

reg=/^(\d{4})-(\d{2})-(\d{2})$/

var r = val.match(reg);

if(r==null)return false;

r[2]=r[2]-1;

var d= new date(r[1], r[2],r[3]);

if(d.getdate()!=r[3])

{

msg="日期格式错误!";

return false;

}

if(d.getmonth()!=r[2])

{

msg="月份格式错误!";

return false;

}

if(d.getfullyear()!=r[1])

{

msg="年份格式错误!";

return false;

}

return true;

}

function istime(val)

{

reg=/^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/

msg="时间格式输入错误,如:12:59或15:12:00";

return check(val,reg);

}

function isdatetime(val)

{

if(val.length<11){msg="日期时间长度不匹配!"; return false;}

if(isdate(val.substring(0,10)))

{

return istime(val.substring(11,val.length));

}

return false;

}

function isother(value)

{

return true;

}

function check(val,reg)

{

if(reg.test(val))

{

return true;

}

return false;

}

function maxlength(maxlen,val)

{

if(maxlen==0) return true;

mylen = strlength(val);

if(mylen<=parseint( maxlen))

{

return true;

}

msg="输入的长度实际是"+mylen+",不能超过"+maxlen;

return false;

}

//判断字符长度 dev-club

function strlength(str)

{

var l=str.length;

var n=l

for (var i=0;i<l;i++)

{

if (str.charcodeat(i)<0||str.charcodeat(i)>255) n++

}

return n

}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 一个很强的验证脚本-ASP教程,ASP应用
分享到: 更多 (0)

相关推荐

  • 暂无文章