2.页面参数校验
2.1字符判断
对页面元素进行字符型判断,由页面得到的元素值都是字符型的,直接使用”= =”来判断字符是否相等

2.2日期判断
对页面进行日期的判断首先要对页面的字符数值进行日期的转换
日期输入一般为:YYYYMMDD
方法:
function checkDate(objname){
var tempname = objname;
var datename = document.getElementById(tempname);
if(datename.value.length != 8){
alert("输入日期格式不正确,请按照'YYYYMMDD'的格式输入");
return false;
}
var y,m,d;
y = datename.value.substring(0,4);
m = datename.value.substring(4,6);
d = datename.value.substring(6,8);

if(datename.value != ""){
if(!CheckDateMain(y,m,d)){
alert("输入日期格式不正确,请按照'YYYYMMDD'的格式输入");
datename.value = "";
datename.focus();
}
}
}
function CheckDateMain(year,month,day){
    if(!CheckNumberMain(year)){
        return false;
    }
    if(!CheckNumberMain(month)){
        return false;
    }
    if(!CheckNumberMain(day)){
        return false;
    }
    var dat = new Date(year - 1900, month - 1, day);
    if (dat.getMonth() == (month-1)) {
        return true;
    } else {
        return false;
    }
}

2.3数值判断
对输入值进行整数型,浮点型,数字判断:
方法:
function CheckFloatMain(str){
    var rc=true;
    oneDecimal=false;
    if (str+"" == "undefined" || str == null){
rc=false;
    } else{
for(i=0;i<str.length;i++){
    ch=str.charAt(i);
    if(i==0 && ch=='-'){
continue;
    }
    if(ch=="." && !oneDecimal){
oneDecimal=true;
        continue;
    }
    if ((ch< "0") || (ch >'9')){
        rc=false;
        break;
    }
}
    }
    return rc;
}

function CheckNumberMain(str){
    var rc=true;
    if (str+"" == "undefined" || str == null){
        rc=false;
    } else if(str.length==0){
rc=false;
    } else {
for(i=0;i<str.length;i++){
    if(str.charAt(i)<'0' || str.charAt(i)>'9'){
        rc=false;
        break;
    }
}
    }
    return rc;
}

function CheckIntegerMain(str){
    var rc=true;
    if (str+"" == "undefined" || str == null){
rc=false;
    } else{
for(i=0;i<str.length;i++){
            if(i==0 && str.charAt(i)=='-'){
                continue;
            }
            if(str.charAt(i)<'0' || str.charAt(i)>'9'){
                rc=false;
                break;
            }
}
    }
    return rc;
}

注意:在进行整数型,浮点型比较大小时都需要进行相应的转换,调用方法parseFloat()或parseInt()来转换

2.4特殊格式转换
去除货币的逗号分割,方法:通过调用replace方法将逗号替换成非空格,例:
pn = primaryInsuredNumber.value.replace(',','');

E_Mail格式校验,方法:
function CheckEmailMain(str){
    var CHAR_LETTER_NUMERIC=1;
    var CHAR_UNDERLINE=2;
    var CHAR_DOT=3;
    var CHAR_AT=4;
    var CHAR_DIVIDE=5;
    var CHAR_END=6;
    var CHAR_OTHER=7;
    var DIV_CHAR=',';

    var rc=true;
    if (str+"" == "undefined" || str == null){
        rc=false;
        return rc;
    } else if(str.length==0){
        rc=true;
        return rc;
    }

    var exit_flag=false;
    var total_char=str.length;
    var pos=0;
    var cur_char;
    var cur_status=0;
    while((pos<=total_char) && (!exit_flag)){
        if(pos==total_char){
          cur_char=CHAR_END;
        }
        else if (str.charAt(pos)=='.'){
          cur_char=CHAR_DOT;
        }
        else if (str.charAt(pos)==DIV_CHAR){
          cur_char=CHAR_DIVIDE;
        }
        else if(str.charAt(pos)=='_'){
          cur_char=CHAR_UNDERLINE;
        }
        else if(str.charAt(pos)=='@'){
          cur_char=CHAR_AT;
        }
        else if(((str.charAt(pos)>='a')&&(str.charAt(pos)<='z'))||((str.charAt(pos)>='A')&&(str.charAt(pos)<='Z'))||((str.charAt(pos)>='0')&&(str.charAt(pos)<='9'))||(str.charAt(pos)=='-')){
          cur_char=CHAR_LETTER_NUMERIC;
        }
        else{
          cur_char=CHAR_OTHER;
        }
        switch (cur_status){
          case -1://error
            rc=false;
            exit_flag=true;
            break;

          case 0://initial status
            if((cur_char==CHAR_LETTER_NUMERIC)||(cur_char==CHAR_UNDERLINE)||(cur_char==CHAR_DOT)){
              cur_status=1;
            }
            else{
              rc=false;
              cur_status=-1;
            }
            break;
          case 1://user name
            if((cur_char==CHAR_LETTER_NUMERIC)||(cur_char==CHAR_UNDERLINE)||(cur_char==CHAR_DOT)){
              cur_status=1;
            }
            else if(cur_char==CHAR_AT){
              cur_status=2;
            }
            else{
              rc=false;
              cur_status=-1;
            }
            break;
          case 2://@
            if(cur_char==CHAR_LETTER_NUMERIC){
              cur_status=6;
            }
            else{
              rc=false;
              cur_status=-1;
            }
            break;

          case 6://"."
            if(cur_char==CHAR_LETTER_NUMERIC){
              cur_status=6;
            }
            else if(cur_char==CHAR_DOT){
              cur_status=3;
            }
            else{
              rc=false;
              cur_status=-1;
            }
            break;

          case 3://fisrt domain name
            if(cur_char==CHAR_LETTER_NUMERIC){
              cur_status=4;
            }
            else{
              rc=false;
              cur_status=-1;
            }
            break;
          case 4://not first domain name
            if(cur_char==CHAR_LETTER_NUMERIC){
              cur_status=4;
            }
            else if(cur_char==CHAR_DOT){
              cur_status=3;
            }
            else if(cur_char==CHAR_DIVIDE){
              cur_status=0;
            }
            else if(cur_char==CHAR_END){
              cur_status=5;
            }
            else{
              rc=false;
              cur_status=-1;
            }
            break;
          case 5://ok
            rc=true;
            exit_flag=true;
            break;
          default:
            rc=false;
            exit_flag=true;
            break;
        }
        pos++;
    }
    return rc;
}
使用正则表达式更为方便