/* 文件修改记录: 2004-06-01 创建文件 2004-06-02 docCheck()加入了$check域的处理和对password的类型域的校验 2005-04-06 加入disableForm函数,可写表单提供变为显示表单的功能 */ /* 把一个可输入数据的表单变为只显示数据的表单 myform:表单名称 */ function disableForm(myform){ for(var i=0;i0 && str.charAt(j-1)==" " ; j--) ; if(i>j) return ""; return str.substring(i,j); } function addspace(str,size) /* 编程人:李子强 用 途:用于向字符串末尾追加HTML中所代表空格的 字符串 思 路:根据在用户提供的字符串末尾追加size次" "字符串 */ { var i=0 len=str.length if (len2||isNaN(hhmmss[i])||""==hhmmss[i]||tmp<0) return false; //如果多于三段/非数值/空值/小于0则返回 else switch (i) { case 0: if (tmp>23) return false; //判断小时 case 1: if (tmp>59) return false; //判断分 case 2: if (tmp>59) return false; //判断秒 } } return true; } function isDateTime(str) /* 编程人:李子强 日 期:2004-02-13 用 途:用于判断一个字符串的值是否为合法的日期时间型 参 数:str ,如果字符串中间没有空格,则认为只是日期,无时间 返回值:合法时间返回真,否则返回假 */ { var sDate; var sTime; var iPos; iPos=str.indexOf(" "); if (iPos<0) //如果没有时间,则只按日期检测 { sDate=str; return(isDate(trim(sDate))); } else { sDate=trim(str.substring(0,iPos+1)); sTime=trim(str.substring(iPos+1,100)); return (isDate(sDate)&&isTime(sTime)); } } function getValue(s,name,mark) /* 编程人:李子强 用 途:用于将获得字符串中的指定参数 */ { var iPos1,iPos2 //用于定位指定参数的前后位置 s=s.toLowerCase(); name=name.toLowerCase(); if (mark==null) mark="&" var key=mark+name+"=" //定位名字前面加入分隔号是为定位更准确 s=s+mark //在字符串最后面加上分隔标记,以便分隔 iPos1=s.indexOf(key); if (iPos1<0) return ""; //如果没有找到此名字,则返回空串 iPos2=s.indexOf(mark,iPos1+mark.length); //查找下一个时,起始值要跳过分隔符 s=s.substring(iPos1+key.length,iPos2); //s此时的值为指定名字的参数 return s; } function getKeyValue(s,name,key) /* 编程人:李子强 用 途:用于将获得字符串中的指定名字的指定参数 被调用: docSearch()函数 docCheck()函数 */ { var iPos1,iPos2 //用于定位指定参数的前后位置 s=s.toLowerCase(); name=name.toLowerCase(); key=key.toLowerCase(); s=s+";" //在字符串最后面加上";",以便分隔 iPos1=s.indexOf(name+":");//定位名字时加入冒号后更准确 if (iPos1<0) return ""; //如果没有找到此名字,则返回空串 iPos2=s.indexOf(";",iPos1); s=s.substring(iPos1,iPos2); //s此时的值为指定名字的参数 s=s+" " //在字符串最后面加上" ",以便分隔 iPos1=s.indexOf(key+"=");//定位名字时加入冒号后更准确 if (iPos1<0) return ""; //如果没有找到此关键字,则返回空串 iPos2=s.indexOf(" ",iPos1); //用空格分隔每个参数 s=s.substring(iPos1+key.length+1,iPos2); //s此时的值为指定的参数值,加1是因为"="号 return s; } function getValueByIndex(s,index,name,mark) /*编程人:李子强 用 途:用于获得指定位置的分隔符分隔的字符串,如果指定name则返回指定的name的值. 日 期:2004-01-30 */ { var iPos1,iPos2; //用于定位指定参数的前后位置 var i,fromIndex; s=s.toLowerCase(); if (name!=null) name=name.toLowerCase(); if (mark==null) mark=";"; s=s+mark //在字符串最后面加上";",以便分隔 i=0; fromIndex=0; for (i=0;i=0&&value==""){ }else{ alert("不能输入全角字符或汉字!"); form[i].focus(); return false; } } if (type=="number"&&!isNumber(value)) //如果值为非数字型 { if(isnull.indexOf("y")>=0&&value==""){ }else{ alert(hint); form[i].focus(); return false; } } else if (type=="date" && !isDate(value)) //如果值为非日期型 { if(isnull.indexOf("y")>=0&&value==""){ }else{ alert(hint); form[i].focus(); return false; } } else if (type=="time" && !isTime(value)) //如果值为非时间型 { if(isnull.indexOf("y")>=0&&value==""){ }else{ alert(hint); form[i].focus(); return false; } } else if (type=="datetime" && !isDateTime(value)) //如果值为非日期时间型 { if(isnull.indexOf("y")>=0&&value==""){ }else{ alert(hint); form[i].focus(); return false; } } else if (type=="email" && !isEMail(value)) //如果值为非法的email { if(isnull.indexOf("y")>=0&&value==""){ }else{ alert(hint); form[i].focus(); return false; } } else if (type=="english" && !isEnglish(value)) //如果值包含非法的英文字符 { if(isnull.indexOf("y")>=0&&value==""){ //alert("ddd"); }else{ alert(hint); form[i].focus(); return false; } } else if (type=="registername" && !isREGISTERNAME(value)) //如果值包含非法的英文字符 { if(isnull.indexOf("y")>=0&&value==""){ //alert("ddd"); }else{ alert(hint); form[i].focus(); return false; } } else if (type=="phone" && !isPhone(value)) //如果值包含非法的电话号码 { if(isnull.indexOf("y")>=0&&value==""){ }else{ alert(hint); form[i].focus(); return false; } } else if (type=="postcode" && !isPostalCode(value)) { if(isnull.indexOf("y")>=0&&value==""){ }else{ alert(hint); form[i].focus(); return false; } } } //检查是否有限制长度 if(maxlength!="unlimited"){ var maxlen=parseInt(maxlength); if(value.length>maxlen) { alert("此处字符不能超过"+maxlength+"个字符!"); form[i].focus(); return false; } } if(minlength!="unlimited"){ var minlen=parseInt(minlength); if(value.length