页面验证JavaSript脚本样例库.htm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0056)http://oa.37c.cc/public/operation/filedisplay.asp?id=219 -->
<HTML><HEAD>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content="MSHTML 5.00.3809.1800" name=GENERATOR></HEAD>
<BODY><XMP>/*--
//CommonScriptLib.js  :  This is a common script library;
 while using it,make a direction named "js" in current project and name this file to "CommonScriptLib.js";
//In the page add two tags of script,in the first give the src to "/js/CommonScriptLib.js",in the second you can add the else function of self.


//usage:   first

//like:<script language="javaScript" src="../js/util.js"></script>

//本js文件包括:
// Keypress(ikey):
  回车后把焦点放入下一个输入框,参数(ikey)一般为"this".

// codetokind(m_input,m_select):
  由输入代码到输入名称之间的转化,参数(m_input)为输入框,参数(m_select)为选择框.

// kindtocode(m_input,m_select):
  由输入名称到输入代码之间的转化,参数(m_input)为输入框,参数(m_select)为选择框.

// ChkCodeKind():
  检测输入代码和选择名称是否匹配,参数不固定,为偶数。
  用例:flag=ChkCodeKind('thisform.f1','thisform.f2',...)

// SetToDel(field):
  处理删除标记,参数(field)一般为"this"。

// SetToChk(field):
  处理选择标记,参数(field)一般为"this"。

// ChkError(flag,Obj):
  检测错误,并做显示处理.

// ChkDate(date):
  检测日期格式'YYYY-MM-DD',参数(date)一般为"this"。
  用例:οnblur="ChkError(ChkDate(this),this)"

// ChkCoDate(Osdate,Oedate):
  检测日期格式'YYYY-MM-DD',并比较,参数(Osdate)为开始日期,参数(Oedate)为终止日期。
  用例:οnblur="ChkError(ChkCoDate(thisform.gsbeg,this),this)"

// CheckNull():
  检测输入域是否为空,参数不固定。
  用例:flag=CheckNull('thisform.f1','thisform.f2',...)

// ChkNsrCode(obj):
  检查纳税人识别号,参数(obj)一般为"this"。
  用例:οnblur="ChkError(ChkNsrCode(this),this)"

--*/
//-----------------------------------------------------------------------------//
/* 其它函数调用用例:
οnblur="ChkError(ChkInt(this),this)"   //检测正整数,小于2的16次方
οnblur="ChkError(ChkReal(this,2,10),this)"  //检测实数,小数位为2位,整数位缺省为10位
οnblur="ChkError(ChkDot(this,2),this)"   //检测小数,小数点后为2位
οnblur="ChkError(isPostNum(this),this)"   //检测邮政编码
οnblur="ChkError(isEmail(this),this)"   //检测Email地址
οnblur="ChkError(ChkTelCode(this),this)"  //检测电话号码
οnblur="ChkError(ChkDigit(this,10,false),this)" //检查不超过10位的数字
*/
//-----------------------------------------------------------------------------//

//--------------------------is* : 通用检测函数---------------------------------//

//--------------------------去掉字符串的前后空格-------------------------------//


String.prototype.trim=function(){     //去左右空格
  return this.replace(/(^/s*)|(/s*$)/g, "");
}

function trim(str) {
 for(var i = 0 ; i<str.length && str.charAt(i)==" " ; i++ ) ;
 str=str.substring(i,str.length);
 for(var i = str.length-1 ;  i>=0 && str.charAt(i)==" " ; i-- ) ;
 str=str.substring(0,i+1);
 return str;
}

//------------------------四舍五入,n为小数位数---------------------------------//
function myround(m,n) {
 return Math.round(m*Math.pow(10,n))/Math.pow(10,n);
}

//-----------------------------------------------------------------------------//
function isBetween(val,lo,hi){
 if( val<lo || val>hi ){
  return false;
 }
 else{
  return true;
 }
}

//-----------------------------------------------------------------------------//
function isEmpty(obj){
 var str=obj.value;
// if (!str) str=_str;
 if(str==""){
  return true;
 }
 else{
  return false;
 }
}

//-----------------------------------------------------------------------------//
function isChar(theChar){
 var theMask="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
 if(theChar==""){
  return true;
 }
 else if(theMask.indexOf(theChar)==-1){
  return false;
 }
 return true;
}

//-----------------------------------------------------------------------------//
function isDigit(theNum){
 var theMask="0123456789";
 if(theNum==""){
  return true;
 }
 else if(theMask.indexOf(theNum)==-1){
  return false;
 }
 return true;
}

//-----------------------检测整数,不对外---------------------------------------//
function isInt(theInt){

 if(theInt=="") {
  return true;
 } else {
  for(var i=0;i<theInt.length;i++){
   if(isDigit(theInt.charAt(i))==false){
    return false;
   }
  }
  return true;
 }
}

//------------------检测正整数,小于2的16次方----------------------------------//
function ChkInt(Obj) {
 var theInt=Obj.value;
 if(theInt=="") {
  return true;
 } else {
  for(var i=0;i<theInt.length;i++){
   if(isDigit(theInt.charAt(i))==false){
    alert("请输入正确的整数字!");
    return false;
   }
  }
  var n=eval(theInt);
  if (n>65536) {
   alert("请输入小于或等于65536的整数!");
   return false;
  }
  return true;
 }
}

//----------------------------检测邮政编码-----------------------------------//
function isPostNum(_this){
 if(isEmpty(_this)){
  return true;
 }
 else if(isBetween(_this.value.length,6,6)==false){
  alert("邮政编码应为6个字符长度!");
  return false;
 }
 else if(isInt(_this.value)==false){
  alert("邮政编码应为数字!");
  return false;
 }
  return true;
}

//----------------------------检测Email地址------------------------------------//
function isEmail(_theStr){
 //仅检查"."和"@"
 var theStr=_theStr.value;
 var atIndex=theStr.indexOf("@");
 var doIndex=theStr.indexOf(".",atIndex);
 var theSub=theStr.substring(0,doIndex+1);
 if(isEmpty(_theStr)){
  return true;
 }
 if((atIndex<1)||(atIndex!=theStr.lastIndexOf("@"))||(doIndex<atIndex+2)||(theStr.length<=theSub.length)){
  alert("输入Mail地址格式有误!");
  return false;
 }
 return true;
}

//----------------------------检测电话号码------------------------------------//
function ChkTelCode(num)
{
 if(isEmpty(num)){
 return true;
 }
 else{
 for(i_loop=0;i_loop<num.value.length;i_loop++)  
  {
    if (!(((num.value.charAt(i_loop)>=0)&&(num.value.charAt(i_loop)<=9))||(num.value.charAt(i_loop)=="(")||(num.value.charAt(i_loop)==")")||(num.value.charAt(i_loop)=="-")||(num.value.charAt(i_loop)==",")))
     {
      alert("电话号码的格式不正确,它只能包括数字、‘,’、‘-’和括号!");
      return false;  
     }
    if( ((num.value.charAt(i_loop)==")")&&(num.value.charAt(i_loop+1)!="-" )&&(num.value.charAt(i_loop+1)!=","))||(num.value.charAt(i_loop)=="-")||(num.value.charAt(i_loop)==","))
       {
        if (((num.value.length-i_loop-1)>8)||((num.value.length-i_loop-1)<7))
          {
//           alert("电话号码的长度不正确,在区号之后应该是7位或者8位!");
//           return false;
          }
        } 
   }
 if (!((num.value.length>=7)&&(num.value.length<=20)))
    {
      alert("电话号码的长度不正确,它只能大于或等于7位并且小于或等于20位!");
      return false;  
     }
 }
return true;
}

//----------------------检测实数,不对外----------------------------------------//
function isReal(_theStr,decLen,intLen){
 var theStr=_theStr.value;
 if(theStr.indexOf("-")==0) theStr=theStr.substring(1,theStr.length);
 var dot1st=theStr.indexOf(".");
 var dot2nd=theStr.lastIndexOf(".");
 var OK=true;
 
 if(isEmpty(_theStr)){return true;}
 if(intLen==null) intLen=10;
 if(dot1st==-1){
  if(!isInt(theStr)){
   return false;
  }
  else if(theStr.length>intLen){
   alert("整数位太长!");
   return false;
  }
  else{
   return true;
  }
 }
 else if(dot1st!=dot2nd){return false;}
 else if(dot1st==0){return false}
 else{
  var intPart=theStr.substring(0,dot1st);
  var decPart=theStr.substring(dot2nd+1);
  if(!isInt(intPart)||!isInt(decPart)){
   return false;
  }
  else if(intPart.length>intLen){
   alert("整数位太长!");
   return false;
  }
  else if(decPart.length>decLen){
   alert("小数位太长!");
   return false;
  }
  else if(decPart==""){
   return false;
  }
  else{
   return true;
  }
 }
}

//---------------------检测实数,小数位为n位,整数位为m位------------------------//
function ChkReal(Oreal,n,m) {
 if(Oreal.value=="") {
  return true; 
 }
 if (!isReal(Oreal,n,m)) {
  alert("请输入正确的数字!");
  return false;
 } else {
  if (eval(Oreal.value) > 9999999999.99) {
   alert("错误:输入的数字太大!");
   return false;
  } else {
   return true;
  }
 }
}

//---------------------检测小数,小数点后为n位----------------------------------//
function ChkDot(_theStr,n) {
 var theStr=_theStr.value;
 if(_theStr.value=="") {
  return true; 
 }
 if(ChkReal(_theStr,n)) {
  if(eval(theStr)<1) {
   return true;
  } else {
   alert("数字要小于1!");
   return false;
  }
 } else {
  return false;
 }
}

//-------------------检查不超过(或等于)n位的数字----------------------------//
function ChkDigit(obj,n,flag) {  //flag=true 等于;flag=false 不超过.
 var num=obj.value;
 if(num=="") return true;
 for(var i=0;i<num.length;i++){
  if(isDigit(num.charAt(i))==false){
   alert("请输入数字!");
   return false;
  }
 }
 if(flag) {
  if(num.length != n) {
   alert("请输入"+n+"位数字!");
   return false;
  }
 } else {
  if(num.length > n) {
   alert("请输入不超过"+n+"位的数字!");
   return false;
  }
 }
 return true;
}

//-----------------------------------------------------------------------------//
function isDate(theDate){
 //加入补齐位数为10的函数
 theStr=theDate.value;
 var the1st=theStr.indexOf("-");
 var the2nd=theStr.lastIndexOf("-");
 if(the1st==the2nd){
  return false;
 }
 else{
  var y=theStr.substring(0,the1st);
  var m=theStr.substring(the1st+1,the2nd);
  var d=theStr.substring(the2nd+1,theStr.length);
  var maxDays=31;
  if(isInt(y)==false||isInt(m)==false||isInt(d)==false){
   return false;
  }
  else if(y.length<4){return false}
  else if(!isBetween(m,1,12)){return false;}
  else if(m==4||m==6||m==9||m==11){maxDays=30;}
  else if(m==2){
   if(y%4>0){maxDays=28;}
   else if(y%100==0&&y%400>0){maxDays=28;}
   else{maxDays=29;}
  }
  if(isBetween(d,1,maxDays)==false){return false;}
  else{return true;}
 }
}

//------------------检测错误,并做显示处理--------------------------------------//
function ChkError(flag,obj) {
 if(flag) {
    if(obj.style.backgroundColor=="red") {
     obj.style.color="black";
  obj.style.backgroundColor="white";
    } 
  return true;
 } else {
  obj.style.color="white";
  obj.style.backgroundColor="red";
  obj.value="";
  obj.focus();
  return false;
 }
}

//-------------------检测域的文字长度不超过n---------------------------------------//
function ChkLength(obj,n) {
//alert(obj.value.length);
 if (obj.value.length > n) {
  obj.style.color="white";
  obj.style.backgroundColor="red";
  alert("注意:文字的长度不能超过"+n+"个!"); 
  obj.focus();
  return false;
 } else {
    if(obj.style.backgroundColor=="red") {
  obj.style.color="black";
  obj.style.backgroundColor="white";
    }
  return true;
 }
}

//-----------------------------------------------------------------------------//
//-----------------------------Return to TAB-----------------------------------//
function Keypress(ikey) {
  var ieKey=event.keyCode;
  var obj;
//alert(ieKey);
  if (ieKey == 13) {
     for(i_loop = 0;i_loop < document.forms[0].elements.length;i_loop++) {
  if (document.forms[0].elements[i_loop] == ikey) {
   for(i=i_loop+1;;i++) {
    if(i==document.forms[0].elements.length) i=0;
    obj=document.forms[0].elements[i];
    if(obj.type=="hidden" || obj.readOnly==true || obj.disabled==true) {
     continue;
    } else {
     event.keyCode=0;
     obj.focus();
     return;
    }
   }
   return;
  }
     }
  }
}

//-----------------------------检测日期格式----yyyy-mm-dd----------------------//
//用例:οnblur="ChkError(ChkDate(this),this)"
function ChkDate(date)  
{
   var str=date.value;
   var date_month="";
   var date_day="";
   var date_year="";
   var i=0;
   var y_m=0;
   var m_d=0;
 if (date.value!="") {
 if ((str.length>10)||(str.length<8))
  {
   alert("输入的日期格式错误,应该为:YYYY-MM-DD!");
   return false;
  }
 for(i_loop=0;i_loop<str.length;i_loop++) {
  if (str.charAt(i_loop)=="-") {
   i++;
   if (i==1) {
    if (i_loop!=4) {
     alert("输入的日期中年份的格式错误,应该为:YYYY-MM-DD ");
     return false;  
    }
    y_m=i_loop;
   } else if(i==2) {
    m_d=i_loop;
   } 
  }
 }
 if ((i==2)&&(m_d==str.length-1)) {
  alert("输入的日期格式错误,应该为:YYYY-MM-DD!");
  return false;  
    }
 for(i_loop=0;i_loop<4;i_loop++) {
  date_year=date_year+str.charAt(i_loop);
 }
 if (i==2) {
  for(i_loop=y_m+1;i_loop<m_d;i_loop++) {
   date_month=date_month+str.charAt(i_loop);
        } 
    } else {
  for(i_loop=y_m+1;i_loop<str.length;i_loop++) {
   date_month=date_month+str.charAt(i_loop);
        } 
    }
 if (i==2) {
  for(i_loop=m_d+1;i_loop<str.length;i_loop++) {
   date_day=date_day+str.charAt(i_loop);
  }
 }
 if (!(ChkYear(date_year) && ChkMon(date_month))){
  return false;
 }
 if (i==2) {
  if (!(ChkDay(date_year,date_month,date_day))) {
   return false;
  }
    }
 if (m_d==6) {
  date.value=InsertStr(date.value,m_d-1,'0');
 } 
 if ((i==1)&&(str.length==6)) {
  date.value=InsertStr(date.value,5,'0');
 }
 if (((str.length-m_d-1)==1)&&(i==2)) {
  date.value=InsertStr(date.value,date.value.length-1,'0');
 } 
  }
  return true;
}

//
function ChkYear(num)   //invoke in ChkDate
{
  if (!isInt(num)) {
 alert("输入的日期中的年份不正确,必须为数字");
    return false;  
  }
  if (num<1900 || num>2100) {
     alert("输入的日期中的年份不正确,必须处于1900年--2100年之间");
     return false;
  }
  return true;
}

//
function ChkMon(num)   //invoke in ChkDate
{
  if (!isInt(num)) {
     alert("输入的日期中的月份不正确,必须为数字");
     return false;  
  }
  if (num<1 || num>12) {
     alert("输入的日期中的月份不正确,必须处于1--12之间");
     return false;
  }
  return true;
}

//
function ChkDay(y,m,d)   //invoke in ChkDate
{
 var maxDays=31;
 if(!isInt(d)){
      alert("输入的日期中的日不正确,必须为数字");
   return false;
 }
 else if(m==4||m==6||m==9||m==11){maxDays=30;}
 else if(m==2){
  if(y%4>0){maxDays=28;}
  else if(y%100==0&&y%400>0){maxDays=28;}
  else{maxDays=29;}
 }
 if(d<1 || d>maxDays) {
     alert("输入的日期中的日不正确,必须处于1--"+maxDays+"之间");
  return false;
 } else {
  return true;
 }
}

//
function InsertStr(Str,InsPlace,SubStr)  //invoke in ChkDate
{
  var s1;
  var s2;
  s1=Str.substring(0,InsPlace);
  s2=Str.substring(InsPlace,Str.length);
  s1=s1+SubStr;
  s1=s1+s2;
  return s1;
}


//-----------------------------比较日期的大小-----------------------------------//
function CompareDate(startDate,endDate) { //yyyy-mm-dd
 var sYear=eval(startDate.substring(0,4));
 var sMonth=eval(startDate.substring(5,7));
 var sDay=eval(startDate.substring(8,10));
 
 var eYear=eval(endDate.substring(0,4));
 var eMonth=eval(endDate.substring(5,7));
 var eDay=eval(endDate.substring(8,10));
//alert(eYear+eMonth+eDay);

 if(eYear>sYear) {
  return 1;
 } else if(eYear<sYear) {
  return -1;
 } else {
  if(eMonth>sMonth) {
   return 1;
  } else if(eMonth<sMonth) {
   return -1;
  } else {
   if(eDay>sDay) {
    return 1;
   } else if(eDay<sDay) {
    return -1;
   } else {
    return 0;
   }
  }
 }
}

//----------------------检测日期格式,并比较----yyyy-mm-dd----------------------//
//用例:οnblur="ChkError(ChkCoDate(thisform.gsbeg,this),this)"
function ChkCoDate(Osdate,Oedate) {
// if(ChkDate(Osdate) && ChkDate(Oedate)) {
 if(ChkDate(Osdate)) {
   if(ChkDate(Oedate)) {
  if(Osdate.value=="" || Oedate.value=="") return true;
  if(CompareDate(Osdate.value,Oedate.value)==1) {
   return true;
  } else {
   alert("            日期关系不正确!/n比如:终止日期应该大于开始日期!");
   return false;
  }
   } else {
  Oedate.value="";
  return false;
   }
 } else {
  Osdate.value="";
  return false;
 }
}

//-----------------------由税目代码到税目名称之间的转化------------------------//
function codetokind(m_input,m_select){
//本函数用于由税目代码到税目名称之间的转化。
//ss变量用于判断当前"taxmcode"等存在的个数,如果多于2,则需要使用数组,否则直接使用
//其名称来调用其属性和方法。
 var i=0;
 var ss=0;

 for(m=0;m<document.forms[0].elements.length;m++){
  if(document.forms[0].elements[m].name==m_input.name){
   ss++;
  }
 }
 if(ss<2){ // 即:当前只有一行,直接用其名称来调用其属性和方法
  return sub_codetokind(m_input,m_select);
 }
 else{
     for(i=0;i<document.forms[0].elements.length;i++){
  if(document.forms[0].elements[i]==m_input){
   return sub_codetokind(m_input,document.forms[0].elements[i+1]);
  }
  }
 }
}

function sub_codetokind(m_input,m_select) {  //invoke in codetokind
 var i=0;
 var flag=false;
 var inputlen;
 var selectlen=0;
  
 if(m_select.length<2) {
  m_input.value="";
  return false; 
 }
 inputlen=m_input.value.length;
 for(i=0;i<m_select.options.length;i++){
  if(m_select.options[i].value.length>selectlen){
   selectlen=m_select.options[i].value.length;
  }
 }
 if(isInt(m_input.value)==false || inputlen>selectlen){
  alert("错误:您输入有误,请重新输入或通过下拉列表选择!/n/t注意:请输入"+selectlen+"个数字!");
  m_input.value="";
  m_select.options[0].selected=true;
  return false;
 }
 for(i=0;i<m_select.options.length;i++){
  if(m_select.options[i].value==m_input.value){
   m_select.options[i].selected=true;
   flag=true;
   break;
  }
 }
 if(inputlen==selectlen) {
  if(flag) {
     if(m_input.style.backgroundColor=="red") {
   m_input.style.color="black";
   m_input.style.backgroundColor="white";
     }
   return true;
  } else {
   alert("错误:您输入有误,请重新输入或通过下拉列表选择!/n/t注意:请输入"+selectlen+"个数字!");
   m_input.value="";
   m_select.options[0].selected=true;
   return false;   
  }
 }
}

//----------------------由税目名称到税目代码之间的转化-------------------------//
function kindtocode(m_input,m_select)
{
//本函数用于由税目名称到税目代码之间的转化。
//ss变量用于判断当前"taxmcode"等存在的个数,如果多于2,则需要使用数组,否则直接使用
//其名称来调用其属性和方法。
 var i=0;
 var ss=0;

 for(m=0;m<document.forms[0].elements.length;m++){
  if(document.forms[0].elements[m].name==m_select.name){     
   ss++;
  }
 }
 if(ss<2) { // 即:当前只有一行,直接用其名称来调用其属性和方法
  return sub_kindtocode(m_input,m_select);
 } else {
  for(i=0;i<document.forms[0].elements.length;i++){
   if(document.forms[0].elements[i]==m_select){ // i即为焦点字段在form元素中的位置
    return sub_kindtocode(document.forms[0].elements[i-1],m_select);
   }
  }
    }
}

function sub_kindtocode(m_input,m_select) {  //invoke in kindtocode
 var flag=false;

 for(i=0;i<m_select.options.length;i++){
  if(m_input.value == m_select.options[i].value) flag=true;
 }
 if(!(m_input.value == "" || flag)) {
  alert("错误:您输入有误,请重新输入或通过下拉列表选择!");
  m_input.value="";
  m_select.options[0].selected=true;
  m_input.focus();
  return false;
 }
 for(i=0;i<m_select.options.length;i++){
  if(m_select.options[i].selected){
      m_input.value=m_select.options[i].value;
     if(m_input.style.backgroundColor=="red") {
   m_input.style.color="black";
   m_input.style.backgroundColor="white";
     }
   return true;
  }
 }
}

//----------------------检测输入代码和选择名称是否匹配------------------------//
function ChkCodeKind() {
 var n=ChkCodeKind.arguments.length;
 var obj1,obj2,objtemp;
 var flag=true;
 var num=0;

 for(i=0;i<(n/2);i++) {
   obj1=eval(ChkCodeKind.arguments[i*2]);
   obj2=eval(ChkCodeKind.arguments[i*2+1]);
   if(obj1 && obj2) {
    if(!isNaN(obj1.length)){
   for(var j=0;j<obj1.length;j++){
    if(!(obj1[j].value==" " || trim(obj1[j].value)==obj2[j].options[obj2[j].selectedIndex].value)) {
     obj1[j].style.color="white";
     obj1[j].style.backgroundColor="red";
     if(flag) {
      objtemp=obj1[j];
      flag=false;
      num=1;
     } else {
      num++;
     }
    } else {
       if(obj1[j].style.backgroundColor=="red") { 
     obj1[j].style.color="black";
     obj1[j].style.backgroundColor="white";
       }
    }
   }
    }
    else {
     if(!(obj1.value==" " || trim(obj1.value)==obj2.options[obj2.selectedIndex].value)) {
   obj1.style.color="white";
   obj1.style.backgroundColor="red";
   if(flag) {
    objtemp=obj1;
    flag=false;
    num=1;
   } else {
    num++;
   }
     } else {
     if(obj1.style.backgroundColor=="red") {
   obj1.style.color="black";
   obj1.style.backgroundColor="white";
     }
  }
   }
  }
 }
 if(flag) {
  return true;
 } else {
    alert("总共有"+num+"对输入代码和选择名称不匹配!!!");       
    objtemp.focus();
    return false;  
 }
}

//------------------------------处理删除标记-----------------------------------//
function SetToDel(field) 
{
  var ieKey=event.keyCode;
  if (ieKey != 13) {
 if (field.value=="X") {
  field.value=" ";
//  delBlank(field);
 } else {
  field.value="X";
//  setBlank(field);
 }
  }
}

//------------------------------处理选择标记----------------------------------//
function SetToChk(field)
{
  var ieKey=event.keyCode;
  if (ieKey != 13) {
 if (field.value=="√") {
  field.value=" ";
 } else {
  field.value="√";
 }
  }
}


//---------------------------检测域值是否为空----------------------------------//
//用例:flag=CheckNull('thisform.f1','thisform.f2',...)
function CheckNull() {    
 var n=CheckNull.arguments.length;
 var obj,objtemp;
 var flag=true;
 var num=0;

 for(i=0;i<n;i++) {
//  alert(checknull.arguments[i]);
   obj=eval(CheckNull.arguments[i]);
      if(obj) {
    if(!isNaN(obj.length)){
   for(var j=0;j<obj.length;j++){
    if(obj[j].value=="") {
     obj[j].style.color="white";
     obj[j].style.backgroundColor="red";
     if(flag) {
      objtemp=obj[j];
      flag=false;
      num=1;
     } else {
      num++;
     }
    } else {
       if(obj[j].style.backgroundColor=="red") { 
     obj[j].style.color="black";
     obj[j].style.backgroundColor="white";
       }
    }
   }
    }
    else {
     if(obj.value=="") {
   obj.style.color="white";
   obj.style.backgroundColor="red";
   if(flag) {
    objtemp=obj;
    flag=false;
    num=1;
   } else {
    num++;
   }
     } else {
     if(obj.style.backgroundColor=="red") {
   obj.style.color="black";
   obj.style.backgroundColor="white";
     }
  }
   }
  }
 }
 if(flag) {
  return true;
 } else {
    alert("总共有"+num+"个必填项内容不能为空!!!");       
    objtemp.focus();
    return false;  
 }
}


//-----------------一次运行多个函数,没有调用-----------------------------------//
function MoreFunc() {
 var n=MoreFunc.arguments.length;
 for(i=0;i<n;i++) {
//   alert(MoreFunc.arguments[i]);
   eval(MoreFunc.arguments[i]);
 }
}

//-----------用键盘空格设置X---------------------------------------------------//
function SetToDel_Keypress(obj) {
  var ieKey=event.keyCode;
//alert(ieKey);
  if (ieKey == 32) {
 if (obj.value=="X") {
  obj.value=" ";
//  delBlank(obj);
 } else {
  obj.value="X";
//  setBlank(obj);
 }
  } else {
 if (obj.value=="X") {
  obj.value="X";
 } else {
  obj.value=" ";
 }
  }
 Keypress(obj);
}

//-----------用键盘空格设置√--------------------------------------------------//
function SetToChk_Keypress(obj) {
  var ieKey=event.keyCode;
//alert(ieKey);
  if (ieKey == 32) {
 if (obj.value=="√") {
  obj.value=" ";
 } else {
  obj.value="√";
 }
  } else {
 if (obj.value=="√") {
  obj.value="√";
 } else {
  obj.value=" ";
 }
  }
 Keypress(obj);
}

//----------检查纳税人识别号---------------------------------------------------//
//用法:οnblur="ChkError(ChkNsrCode(this),this)"
function ChkNsrCode(obj) {
 var sum=0;
 var ssum="";
 if(obj.value=="") return true;
 if(ChkDigit(obj,8,true)) {
  for(i=0;i<7;i++) {
   sum=sum+eval(obj.value.charAt(i));
  }
  ssum=sum.toString();
  if(ssum.charAt(ssum.length-1)==obj.value.charAt(7)) {
   return true;
  } else {
   alert("请输入正确的纳税人识别号!");
   return false;
  }
 } else {
  return false;
 }
}

//-------设置必填项标记,红色的*----------------------------------------------//
function SetColor() {
 document.write("<font color=red>*</font>");
}

//-----------------------------------------------------------------------------//
//--------------------------登记,维护专用函数---------------------------------//
//-----------------------------------------------------------------------------//

//-------------------检测证件号码----------------------------------------------//
//用法:οnblur="ChkError(ChkCode(this),this)"
function ChkCode(Obj) {
 var code=Obj.value;
 if(Obj.value=="") {
  return true; 
 }
 if(document.forms[0].ffzjlx) {
  if(document.forms[0].ffzjlx.value!="0") return true;
 }
 if(document.forms[0].zjlx) {
  if(document.forms[0].zjlx.value!="0") return true;
 }
 if(!(code.length==15 || code.length==18)) {
  alert("输入的身份证号码的位数不正确,必须为15位或18位!");
  return false;
 }
 for(i=0;i<code.length;i++) {
  if(!isDigit(code.charAt(i))) {
   alert("请输入数字!");
   return false;
  }
 }
 return true; 
}

function ChkCodegt(Obj) {
 var code=Obj.value;
 if(Obj.value=="") {
  return true; 
 }
 
 if(isNaN(document.forms[0].ricsfz.length)) {
  if(document.forms[0].ricsfz.value!="0") return true;
 } else {
     for(i_loop = 0;i_loop < document.forms[0].elements.length;i_loop++) {
   if (document.forms[0].elements[i_loop] == Obj) {
    if(document.forms[0].elements[i_loop-2].value!="0") return true;
    break;
   }
  }
 }

 if(!(code.length==15 || code.length==18)) {
  alert("输入的身份证号码的位数不正确,必须为15位或18位!");
  return false;
 }
 for(i=0;i<code.length;i++) {
  if(!isDigit(code.charAt(i))) {
   alert("请输入数字!");
   return false;
  }
 }
 return true; 
}

//-----------检测小数(百分数%)------------------------------------------------//
function isDot(_theStr,n) {
 var theStr=_theStr.value;
 if(_theStr.value=="") {
  return true; 
 }
 if(ChkReal(_theStr,n)) {
  if(eval(theStr)<=100) {
   return true;
  } else {
   alert("数字要小于或等于100!");
   return false;
  }
 } else {
  return false;
 }
}

//-----------------------------------------------------------------------------//
function codetokind_search(m_input,m_select,search){
 if(codetokind(m_input,m_select)) {
  setkey(search);
 } else {
  if(m_input.name=="city") {
   document.forms[0].street.value="";
   document.forms[0].streetlist.options[0].selected=true;
  }
 }
}

//-----------------------------------------------------------------------------//
function kindtocode_search(m_input,m_select,search){
 if(kindtocode(m_input,m_select)) {
  setkey(search);
 } else {
  if(m_input.name=="city") {
   document.forms[0].street.value="";
   document.forms[0].streetlist.options[0].selected=true;
  }
 }
}

//-------------设置起始光标----------------------------------------------------//
function SetCursor(first) {
 if(document.forms[0].sign) {
  var sflag=document.forms[0].sign.value;
 } else {
  var sflag="0";
 }
 var obj=eval(first);
 if(obj) {
  switch (sflag)
  {
  case "0":
   obj.focus();
   break;
  case "1":
//   document.forms[0].street.value="";
//   document.forms[0].streetlist.options[0].selected=true;
   document.forms[0].street.focus();
   break;
  case "2":
   var sflag2=document.forms[0].dj.value;
   if(sflag2=="2" || sflag2=="6") {
    document.forms[0].nsrcode.focus();
   } else if(sflag2=="7") {
    if(isNaN(document.forms[0].tzfname.length)) {
     document.forms[0].tzfname.focus();
    } else {
     document.forms[0].tzfname[0].focus();
    }
   } else {
    obj.focus();
   }
   break;
        case "3":
  if(document.forms[0].tydm) {
   document.forms[0].tydm.focus();
  } else {
   obj.focus();
  }
  break;
  
  default:
   obj.focus();
   break;
  }
 }
 return;
}

//--------打"X"的不做非空检查--------------------------------------------------//
//---------------------------检测域值是否为空2----------------------------------//
//用例:flag=CheckNull2('thisform.delmark0','thisform.bankcode0','thisform.bankname','thisform.account0','thisform.bzname')
function CheckNull2() {    
 var n=CheckNull2.arguments.length;
 var obj,objtemp;
 var flag=true;
 var num=0;
 var obj1=eval(CheckNull2.arguments[0]);

 for(i=1;i<n;i++) {
   obj=eval(CheckNull2.arguments[i]);
      if(obj) {
    if(!isNaN(obj.length)){
   for(var j=0;j<obj.length;j++){
    if((obj1[j].value!="X")&&(obj[j].value=="")) {
     obj[j].style.color="white";
     obj[j].style.backgroundColor="red";
     if(flag) {
      objtemp=obj[j];
      flag=false;
      num=1;
     } else {
      num++;
     }
    } else {
       if(obj[j].style.backgroundColor=="red") { 
     obj[j].style.color="black";
     obj[j].style.backgroundColor="white";
       }
    }
   }
    }
    else {
     if((obj1.value!="X")&&(obj.value=="")) {
   obj.style.color="white";
   obj.style.backgroundColor="red";
   if(flag) {
    objtemp=obj;
    flag=false;
    num=1;
   } else {
    num++;
   }
     } else {
     if(obj.style.backgroundColor=="red") {
   obj.style.color="black";
   obj.style.backgroundColor="white";
     }
  }
   }
  }
 }
 if(flag) {
  return true;
 } else {
    alert("还有"+num+"个必填项内容不能为空!!!");       
    objtemp.focus();
    return false;  
 }
}

/*
function setBlank(field) {
 var obj=document.forms[0].delmark0;
 if(obj) {
  if(!isNaN(obj.length)) {
   for(i=0;i<obj.length;i++) {
    if(obj[i]==field) {
     if(document.forms[0].bankcode0[i].value=="") document.forms[0].bankcode0[i].value=" ";
     if(document.forms[0].bankname[i].value=="") document.forms[0].bankname[i].value=" ";
     if(document.forms[0].account0[i].value=="") document.forms[0].account0[i].value=" ";
     if(document.forms[0].bzname[i].value=="") document.forms[0].bzname[i].value=" ";
     return;
    }
   }
  } else {
   if(obj==field) {
    if(document.forms[0].bankcode0.value=="") document.forms[0].bankcode0.value=" ";
    if(document.forms[0].bankname.value=="") document.forms[0].bankname.value=" ";
    if(document.forms[0].account0.value=="") document.forms[0].account0.value=" ";
    if(document.forms[0].bzname.value=="") document.forms[0].bzname.value=" ";
    return;
   }
  }
 }
}

function delBlank(field) {
 var obj=document.forms[0].delmark0;
 if(obj) {
  if(!isNaN(obj.length)) {
   for(i=0;i<obj.length;i++) {
    if(obj[i]==field) {
     if(document.forms[0].bankcode0[i].value==" ") document.forms[0].bankcode0[i].value="";
     if(document.forms[0].bankname[i].value==" ") document.forms[0].bankname[i].value="";
     if(document.forms[0].account0[i].value==" ") document.forms[0].account0[i].value="";
     if(document.forms[0].bzname[i].value==" ") document.forms[0].bzname[i].value="";
     return;
    }
   }
  } else {
   if(obj==field) {
    if(document.forms[0].bankcode0.value==" ") document.forms[0].bankcode0.value="";
    if(document.forms[0].bankname.value==" ") document.forms[0].bankname.value="";
    if(document.forms[0].account0.value==" ") document.forms[0].account0.value="";
    if(document.forms[0].bzname.value==" ") document.forms[0].bzname.value="";
    return;
   }
  }
 }
}
*/

//----------------检测投资比例,分配比例的和为100%----------------------------//
function CheckBili() {
 var n=CheckBili.arguments.length;
 var obj,objtemp;
 var flag=true;
 var sum;

 for(i=0;i<n;i++) {
   obj=eval(CheckBili.arguments[i]);
      if(obj) {
  if(isNaN(obj.length)){
    if(document.forms[0].delmark1.value != "X") {   
   if(obj.value == "") obj.value="0";
   if(eval(obj.value) != 100 && eval(obj.value) != 0) {
    if(flag) {
     objtemp=obj;
     flag=false;
    }
    obj.style.color="white";
    obj.style.backgroundColor="red";
   } else {
      if(obj.style.backgroundColor=="red") { 
    obj.style.color="black";
    obj.style.backgroundColor="white";
      }
   }
    }
  } else {
   sum=0;
   for (j=0;j<obj.length;j++) {
     if(document.forms[0].delmark1[j].value != "X") {   
    if(obj[j].value == "") obj[j].value="0";
    sum=sum+eval(obj[j].value);  
     }
   }
   sum=myround(sum,2);
   if(sum != 100 && sum != 0) {
    if(flag) {
     objtemp=obj[0];
     flag=false;
    }
    for (j=0;j<obj.length;j++) {
      if(document.forms[0].delmark1[j].value != "X") {   
     obj[j].style.color="white";
     obj[j].style.backgroundColor="red";
      }
    }
   } else {
    for (j=0;j<obj.length;j++) {
     if(obj[j].style.backgroundColor=="red") { 
      obj[j].style.color="black";
      obj[j].style.backgroundColor="white";
     }
    }
   }
  }
   }
 }
 if(flag) {
  return true;
 } else {
    alert("比例的和应该为100%!");       
    objtemp.focus();
    return false;  
 }
}

//----------------比较从业人数和外籍人数的关系---------------------------------//
function CompareMan() {
  cyrs=document.thisform.cyrs;
  wjrs=document.thisform.foreign;
  if(cyrs.value != "" && wjrs.value != "") {
 if(eval(cyrs.value) < eval(wjrs.value)) {
  cyrs.style.color="white";
  cyrs.style.backgroundColor="red";
  wjrs.style.color="white";
  wjrs.style.backgroundColor="red";
  alert("错误:从业人数不能小于外籍人数!");
  cyrs.focus();
  return false;
 } else {
  return true;
 }
  }
  return true;
}

//-----------------------------------------------------------------------------//
function setFocus(obj) {
 obj.focus();
 obj.select(); 
}


//-----------------------------------------------------------------------------//
//-----------------------------------------------------------------------------//
</XMP></BODY></HTML>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值