<script>
 /*************************************************
Validator v1.01
code by 我佛山人
[email protected]
http://www.cunite.com
*************************************************/
 Validator = {
Require : /.+/,
Email : /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,
Phone : /^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$/,
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])?$/,
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'))",
Date : "this.IsDate(value, getAttribute('min'), getAttribute('format'))",
Repeat : "value == document.getElementsByName(getAttribute('to'))[0].value",
Range : "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 : ["以下原因导致提交失败:\t\t\t\t"],
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");
if(typeof(_dataType) == "object" || typeof(this[_dataType]) == "undefined")  continue;
this.ClearState(obj.elements[i]);
if(getAttribute("require") == "false" && value == "") continue;
switch(_dataType){
case "Date" :
case "Repeat" :
case "Range" :
case "Compare" :
case "Custom" :
case "Group" : 
case "Limit" :
case "LimitB" :
case "SafeString" :
if(!eval(this[_dataType])){
this.AddError(i, getAttribute("msg"));
}
break;
default :
if(!this[_dataType].test(value)){
this.AddError(i, getAttribute("msg"));
}
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"));
this.ErrorItem[1].focus();
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);}
}
this.ErrorItem[1].focus();
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;
},
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);
},
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;}
}
 }
</script>

解决方案 »

  1.   

    参考地址:http://www.jobsdb.com.cn/main/jobseeker/
    左侧会员登陆窗口。
      

  2.   

    function isEmpty(el)
    {
    return ((el == null) || (el.length == 0))
    }function IsURL(url)
    {
    if(url == "http://")
    return false;

    return true;
    }/*
    function IsEmail(address)
    {
    if(isEmpty(address))
    return false;

    if(address.indexOf(" ",0) != -1)
    return false;

    var atPos = address.indexOf("@",0);
    if(atPos == -1)
    return false;

    var dotPos = address.indexOf(".", atPos+1);
    if(dotPos == -1)
    return false;

    return true;
    }
    */
    function IsStrNull(string)
    {
    if(isEmpty(string))
    return true; var i;
    var c;
    for(i=0;i<=string.length-1;i++)
    {
    c = string.charAt(i);
    if(c != ' ')
    return false;
    }
    return true;
    }
    function IsNumber(s) //数字判断函数
    {
    var digits = "0123456789";
    var i = 0;
    var sLength = s.length;

    while((i < sLength))
    {
    var c = s.charAt(i);
    if(digits.indexOf(c) == -1)
    return false;
    i++;
    } return true;
    }
    function IsFloat(s) //数字判断函数
    {
    var digits = "0123456789.";
    var i = 0;
    var sLength = s.length;

    while((i < sLength))
    {
    var c = s.charAt(i);
    if(digits.indexOf(c) == -1)
    return false;
    i++;
    } return true;
    }function openSmallWindow(url) 
    {
    window.open(url,"smallWindow","width=500,height=300,scrollbars,resizable");
    return false;
    }
    function Jtrim(str)  //去空隔函数
    {
    var i = 0;
    var len = str.length;
    var j = len - 1;
    flagbegin = true;
    flagend = true;

    if(str == "")
    return str;

    while(flagbegin == true && i < len)
    {
    if(str.charAt(i) == " ")
    {
    i = i + 1;
    flagbegin = true;
    }
    else
    {
    flagbegin = false;
    }
    } while(flagend == true && j >= 0)
    {
    if(str.charAt(j) == " ")
    {
    j = j - 1;
    flagend = true;
    }
    else
    {
    flagend = false;
    }
    } if(i > j)
    return ""; trimstr = str.substring(i, j + 1);

    return trimstr;
    }function IsEmail(s)//验证E-MAIL格式函数
    {
    if(s.length > 100)
    {
    return false;
    }

    var regu = "^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$";
    var re = new RegExp(regu);
    if(s.search(re) != -1)
    return true;
    else
    return false;
    }
    function IsMoney(s)
    {
    strRef = "1234567890.";

    if(!IsEmpty(s))
    return false;

    for(i=0; i<s.length; i++)
    {
    tempChar = s.substring(i, i+1);
    if(strRef.indexOf(tempChar,0) == -1)
    {
    return false; 
    }
    else
    {
    tempLen = s.indexOf(".");
    if(tempLen != -1)
    {
    strLen = s.substring(tempLen + 1, s.length);
    if(strLen.length > 2)
    {
    return false; 
    }
    }
    }
    }

    return true;
    }function IsLeapYear(year) // 判断是不是闰年

    if((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) 
    return true; 
    else
    return false; 
    }
    // 判断日期时间是否正确
    function IsDatetime(s)
    {
    if(s.length > 0)
    {
    datetime = Jtrim(s);
    if(datetime.length == 19)
    {
    sdate = datetime.substring(0,10);
    stime = datetime.substring(11,19);
    if(IsDate(sdate) && IsTime(stime))
    return true;
    else
    return false;
    }
    else
    return false;
    }

    // 空值认为是正确的
    return true;
    }//判断日期是否正确
    function IsDate(s){
    var datetime;
    var year, month, day;
    var gone, gtwo;

    if(s.length > 0)
    {
    if(s == "0" || s == "0000-00-00")
    return true;

    datetime = Jtrim(s);
    if(datetime.length == 10)
    {
    year = datetime.substring(0, 4);
    if(isNaN(year) == true)
    return false;

    gone = datetime.substring(4, 5);
    month = datetime.substring(5, 7);
    if(isNaN(month) == true)
    return false;

    gtwo = datetime.substring(7, 8);
    day = datetime.substring(8, 10);
    if(isNaN(day) == true)
    return false;
    }

    if(((gone == "-") && (gtwo == "-")) || ((gone == "/") && (gtwo == "/")))
    {
    if(month < 1 || month > 12)
    return false;
     
    if(day<1 || day > 31)
    return false; 

    if(month == 2)
    {  
    if(IsLeapYear(year) && day > 29)

    // 二月份日期必须在01到29之间! 
    return false; 
    }       
    if(!IsLeapYear(year) && day > 28)

    // 二月份日期必须在01到28之间!
    return false; 

    }

    if((month == 4 || month == 6 || month == 9 || month== 11) && (day > 30))

    // 在四,六,九,十一月份 \n日期必须在01到30之间!
    return false; 
    }
    }
    else
    {
    return false;
    }
    }

    return true;
    }// 判断时间是否正确
    function IsTime(s){
    var datetime;
    var year, month, day;
    var gone, gtwo;

    if(s > 0)
    {
    datetime = Jtrim(s);
    if(datetime.length == 8)
    {
    hour = datetime.substring(0, 2);
    if(isNaN(hour) == true)
    return false;

    gone = datetime.substring(2, 3);
    minute = datetime.substring(3, 5);
    if(isNaN(minute) == true)
    return false;

    gtwo = datetime.substring(5, 6);
    second = datetime.substring(6, 8);
    if(isNaN(second) == true)
    return false;
    }

    if((gone == ":") && (gtwo == ":"))
    {
    if(hour < 0 || hour > 24)
    return false;

    if(minute < 0 || minute > 59)
    return false;

    if(second < 0 || second > 59)
    return false;
    }
    else
    {
    return false;
    }
    }

    return true;
    }
    function go(myform)
    {
    var count=0;
    for(i=0; i<myform.elements.length; i++)
    {
    if(myform.elements[i].type == "text")
    {
    //alert(myform.elements[i].title);
    //alert(myform.elements[i].type);

    if(myform.elements[i].isnull == "no")
    {
    if(IsStrNull(myform.elements[i].value))
    {
    alert("请输入" + myform.elements[i].title + "!");
    myform.elements[i].focus();
    return false;
    }
    } if(myform.elements[i].datatype == "char" && myform.elements[i].isemail == "yes")
    {
    if(!IsEmail(myform.elements[i].value))
    {
    alert("请输入正确的邮件地址!");
    myform.elements[i].select();
    return false;
    }
    }
    else if(myform.elements[i].datatype == "number")
    {
    if(!IsNumber(myform.elements[i].value))
    {
    alert("请输入正确的数字!");
    myform.elements[i].select();
    return false;
    }
    }
    else if(myform.elements[i].datatype == "date")
    {
    if(!IsDate(myform.elements[i].value))
    {
    alert("请输入正确的日期!");
    myform.elements[i].select();
    return false;
    }
    }
    else if(myform.elements[i].datatype == "time")
    {
    if(!IsTime(myform.elements[i].value))
    {
    alert("请输入正确的时间!");
    myform.elements[i].select();
    return false;
    }
    }
    else if(myform.elements[i].datatype == "datetime")
    {
    if(!IsDatetime(myform.elements[i].value))
    {
    alert("请输入正确的日期时间!");
    myform.elements[i].select();
    return false;
    }
    }
    }
    else if(myform.elements[i].type == "password")
    {
    if(IsStrNull(myform.elements[i].value))
    {
    if(confirm("密码为空不会被修改,需要继续吗?") == false)
    {
    alert("请输入" + myform.elements[i].title);
    myform.elements[i].focus();
    return false;
    }
    }
    }
    else if(myform.elements[i].type == "textarea")
    {
    if(IsStrNull(myform.elements[i].value))
    {
    alert("请输入" + myform.elements[i].title);
    myform.elements[i].focus();
    return false;
    }

    if(myform.elements[i].value.length > myform.elements[i].datalength)
    {
    alert("你输入的" + myform.elements[i].title + "长度超过了限制");
    myform.elements[i].select();
    return false;
    }
    }
    }
    return true;
    }
      

  3.   

    zhaoxiaoyang(梅雪香@hisoft) 说的东东我如何用呀