
function isSubString(sChar,sString){
   var i = 0;
   var sLength = sString.length;
   while ((i < sLength)){
   
       var c = sString.charAt(i);
       if (c==sChar){
         return true;
       }
       i++
   }
	 return false;
}

function isemail(s)
{
    if (s=="") return true;
        if (s.length > 100)
        {
                window.alert("email地址长度不能超过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 isNumber(s)
        {
          if (s.trim()=="") return  true;
                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;
        }
  /**
 * lj:判断非整数、正数和负数
 * @return int   －1-负数；0-正数；1-非整数
 */
function isNumber_all(s)
        {
          if (s=="") return  0;
                var digits = "0123456789";
                var flag=true;//正、负数标志
                var tou=s.charAt(0);
                if (tou=="-")
                {
                  flag=false;
                  s=s.substr(1,s.length-1);
                }
                var i = 0;
                var sLength = s.length;
                while ((i < sLength))
                {
                        var c = s.charAt(i);
                        if (digits.indexOf(c) == -1) return 1;
                        i++;
                }
                if (flag)
                   return 0;
                else
                   return -1;
        }
        function isNC(s)
        {
                var digits = "0123456789abcdefghigklmnopqrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ";
                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 checksfz(ssfzh,dcsrq)

       {
       //判断生日和身份证号码是否一致，若身份证号码为空，则返回true
        if (ssfzh.length==15)
             {
                 ssfzh=ssfzh.slice(6,12);      //取身份证中第七位到十二位的生日

                 year1=ssfzh.slice(0,2);
                 month1=ssfzh.slice(2,4);
                 aa=month1.slice(0,1);

                if(aa=="0")
                 {
                 	month1=month1.slice(1,2);

                 	}

                 month1=parseInt(month1);    //将月份数字化

                 day1=ssfzh.slice(4,6);
          //       day1=parseInt(day1);

                 aa=day1.slice(0,1);

                 if(aa=="0")
                 {
                 	day1=day1.slice(1,2);

                 	}//出生日期里面的年、月、日




                 year2=dcsrq.slice(2,4);
                 index=dcsrq.lastIndexOf("-");
                 month2=dcsrq.slice(5,index);
                 day2=dcsrq.slice(index+1);

                 if(year1!=year2) return false;
                 if(month1!=month2) return false;
                 if(day1!=day2) return false;

              }



       if (ssfzh.length==18)
       {//       alert(month1);
           //     alert(month2);

                 ssfzh=ssfzh.slice(6,14);      //取身份证中第七位到十二位的生日

                 year1=ssfzh.slice(0,4);
                 month1=ssfzh.slice(4,6);
                 aa=month1.slice(0,1);
                 if(aa=="0")
                 {
                 	month1=month1.slice(1,2)

                 	}
                 month1=parseInt(month1);     //将月份数字化
                 day1=ssfzh.slice(6,8);
                 aa=day1.slice(0,1);
                 if(aa=="0")
                 {
                 	day1=day1.slice(1,2);

                 	}
                 day1=parseInt(day1);


                                              //出生日期里面的年、月、日
                 year2=dcsrq.slice(0,4);
                 index=dcsrq.lastIndexOf("-");
                 month2=dcsrq.slice(5,index);
                 day2=dcsrq.slice(index+1);

                 if(year1!=year2)  {return false;}
                 if(month1!=month2) {
                 	return false;
                 	}
                 if(day1!=day2){
                 	 return false;
                 	 }


       }

       return true;

       }

/*function isFloat(s)
        {
                var digits = "0123456789.";
                var i = 0;
                var sLength = s.length;
                var j=0;

                while ((i < sLength))
                {
                        var c = s.charAt(i);
                        if (digits.indexOf(c) == -1) return false;
                        if((i==sLength-1)&&(c==".")){
                             	return false;
                       }
                        if(c==".")j++;
                        i++;
                }
                if(j>1) return false;

                return true;
        }
        */

function isFloat(s)  {
         if(s=="") return true;
        if(parseFloat(s)==s)
            return true;
        else
           return false;
    }

function isFloats(s,i,j)
       {//判断是否是浮点数,整数位数最大为i,小数位数最大为j.
         if (s=="") return true;
       	 len=i+j;
         if(!isFloat(s))
           {
           return false;
           }

       var a=s.split(".");
       if(a[0].length>i)
          return false;
       if(typeof(a[1])=="undefined") return true;
       if(a[1].length>j)return false;

        return true;
 }


 function compareToday(d)
       {//判断日期是否大于当前日期,大于返回1,等于返回0,小于返回-1
       	var dyeari=d.indexOf("-");
        var dmonthi=d.lastIndexOf("-");
        var dyear=parseFloat(d.slice(0,dyeari));   //年
        var dmonth=parseFloat(d.slice(dyeari+1,dmonthi));   //月
        var dday=parseFloat(d.slice(dmonthi+1));   //日

        var today=new Date();
        //alert(today);
        var tday=today.getDate();
        var tmonth=today.getMonth()+1;
        var tyear=today.getFullYear();

        if(dyear>tyear||(dyear==tyear&&dmonth>tmonth)||(dyear==tyear&&dmonth==tmonth&&dday>tday))
        {//alert(tday);
        //alert(tmonth);
          return 1;
        	}
        if(dyear==tyear&&dmonth==tmonth&&dday==tday)
        {
          return 0
        	}
       return -1;
        //alert(tmonth);

       	return false;


       	}
  //日期加年
  function dateAddYear(d,myyear) {
     var dyeari=d.indexOf("-");
     var dmonthi=d.lastIndexOf("-");
     var dyear=parseFloat(d.slice(0,dyeari));   //年
     var dmonth=parseFloat(d.slice(dyeari+1,dmonthi));   //月
     var dday=parseFloat(d.slice(dmonthi+1));   //日
     var y =parseFloat(myyear);
     dyear=dyear+y;
     var rev=""+dyear+"-"+dmonth+"-"+dday;
     if(!isDates(rev))rev=""+dyear+"-"+"3-1";
     return rev ;
  }
  function compareDay(d1,d2)
       {//判断日期d1是否大于日期d2,大于返回1,等于返回0,小于返回-1,其它返回－2（比如d1/d2为空，不比较）
        if ((d1=="") || (d2 == "")) return -2;
        if ((!isDate(d1)) || (!isDate(d2))) return -2;
       	 var d1yeari=d1.indexOf("-");
        var d1monthi=d1.lastIndexOf("-");
        var d1year=parseFloat(d1.slice(0,d1yeari));   //年
        var d1month=parseFloat(d1.slice(d1yeari+1,d1monthi));   //月
        var d1day=parseFloat(d1.slice(d1monthi+1));   //日


        var d2yeari=d2.indexOf("-");
        var d2monthi=d2.lastIndexOf("-");
        var d2year=parseFloat(d2.slice(0,d2yeari));   //年
        var d2month=parseFloat(d2.slice(d2yeari+1,d2monthi));   //月
        var d2day=parseFloat(d2.slice(d2monthi+1));   //日



        if(d1year>d2year||(d1year==d2year&&d1month>d2month)||(d1year==d2year&&d1month==d2month&&d1day>d2day))
        {//alert(tday);
        //alert(tmonth);
          return 1;
        	}
        if(d1year==d2year&&d1month==d2month&&d1day==d2day)
        {
          return 0
        	}
       return -1;
        //alert(tmonth);

       	return false;


}
function dates(y,m,d)
    {//判断日期是否合法

          if ((y=="")||(!isNumber(y))){
            return false;
        }
        if(y.length!=4 || m.length>2 || m.length<1 || d.length>2 ||d.length<1){

        	  return false;
        	}
        if ((y<1900)||(y>2500)){
           return false;
        }
        if ((m=="")||(!isNumber(m))){
            return false;
        }
        if ((m<1)||(m>12)){
           return false;
        }
        if ((d=="")||(!isNumber(d))){
            return false;
        }
        if ((d<1)||(d>31)){
           return false;
        }

        y=Number(y);
         m=Number(m);
         d=Number(d);

          if(y%400==0||(y%4==0 && y%100!=0))
            {
              if(m==2&&(d==30||d==31))
              return false;
            }

          else
             {
             if(m==2&&(d==29||d==30||d==31))
                 {
                 return false;
                 }
             }

           if((m==4||m==6||m==9||m==11)&&d==31)
             {
             return false;
             }

        return true;
      }
/*
 function ynDisplay(arr1,arr2,arr3){
	var ilength=arr3.length;
	var jlength=arr2.length;
	for (i=0;i<ilength;i++){
	   for (j=0;j<jlength;j++){	  
	     if (arr3[i]==arr2[j]){	       
	        arr1[j].style.visibility="visible";

	     }
	   }
	}
}
*/
//note：delete是javascript的关键字
function controlButton(FormName,flag){
        if (flag){
           enable(FormName.add);
           disable(FormName.save);
           disable(FormName.cancel);
           enable(FormName.edit);
           enable(FormName.del);
        }
        else{
           disable(FormName.add);
           enable(FormName.save);
           enable(FormName.cancel);
           disable(FormName.edit);
           disable(FormName.del);
        }
}
//验证邮编
function isPostCode(postcode){
    var expression=/\d{6}/;
    if (postcode=="") return true;
    if (postcode.length!=6) return false;
    if (expression.test(postcode))
    {
      return true;
    }
    else
    {
      return false;
    }
 }
//验证身份证
function isCard(card){
  if ((card.length==15)||(card.length==18)){
        return true;
  }else
        return false;
}

function isIDCard(IDCard){
       if (IDCard=="") return  true;
	if (IDCard.length=15){
	  return true;
	}
	if (IDCard.length=18){
		return true;
	}
  return false;
}

//返回字符串的长度。英文一个字母为1，汉字一个字为2
function getLength(cStr){
   var c = cStr.match(/[^ -~]/g);
	 return cStr.length + (c?c.length:0);
}

//判断是不是日期类型。调用：isDate("2005-09-09"); 返回true或false
 function isDate(cDate){
   if (cDate=="") return  true;
 	 var i=cDate.indexOf("-");
 	 var cYear=cDate.slice(0,i);
 	 cDate=cDate.slice(i+1,cDate.length);
   i=cDate.indexOf("-");
   var cMonth=cDate.slice(0,i);
   var cRiQi=cDate.slice(i+1,cDate.length);
   return dates(cYear,cMonth,cRiQi);
 }

//判断是不是日期类型。调用：isDate("2005-09-09"); 返回true或false.为空返回true
 function isDates(cDates){
 	if (cDates=="")
 	  return true;
 	return isDate(cDates);
 }

//让按钮变为可用。相当于delphi下btn.enalbe。调用：enable(document.form1.btn_add);
function enable(sComponent){
	sComponent.className="buttonEnable";
	sComponent.disabled=false;
}


//让按钮变为不可用。相当于delphi下btn.disalbe。调用：disable(document.form1.btn_add);
function disable(sComponent){
	sComponent.className="buttonDisable";
	sComponent.disabled=true;
}


//让按钮变为可见。调用：envisible(document.form1.btn_add);
function envisible(sComponent){
	sComponent.style.visibility="visible";
}

//让按钮变为不可见。调用：disvisible(document.form1.btn_add);
function disvisible(sComponent){
	sComponent.style.visibility="hidden";
}

//是否选择了一条记录。选择了返回true，否则false;简单情况：如果只有一个form可以调用该方法
function isSelect_Radio(){
	var obj=document.all;
  var flag=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="radio" )&&(obj(i).name =="MainKeyValue" )){
             if (obj(i).checked){
                 flag=1;
             }
           }
      }
   }
  if (flag==1)return true;
  if (flag==0)return false;
}

//是否选择了一条记录。选择了返回true，否则false
function isSelect_CheckBox(){
	var obj=document.all;
  var flag=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="checkbox" )&&(obj(i).name =="MainKeyValue" )){
             if (obj(i).checked){
                 flag=1;
             }
           }
      }
   }
  if (flag==1)return true;
  if (flag==0)return false;
}
//判断框架中是否选中了数据
function ExistsData(comp){
  var obj=comp;
  var flag=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="checkbox" )&&(obj(i).name =="MainKeyValue" )){
             //if (obj(i).checked){
                 flag=1;
            // }
           }
      }
   }
  if (flag==1)return true;
  if (flag==0)return false;
}

//lj:返回所选复选框的关键字串
function getSelectStr_CheckBox(){
  var obj=document.all;
  var sStr="";
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="checkbox" )&&(obj(i).name =="MainKeyValue" )){
             if (obj(i).checked){
                 sStr += obj(i).value;
             }
           }
      }
   }
  return sStr;
}
//lj:返回所选复选框的个数
function getSelectNumber_CheckBox(){
  var obj=document.all;
  var iNum=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="checkbox" )&&(obj(i).name =="MainKeyValue" )){
             if (obj(i).checked){
                 iNum++;
             }
           }
      }
   }
  return iNum;
}
function getRowIndex(){
  var obj=document.all.MainKeyValue;
  if (obj.length>0){
    for (i=0;i<obj.length;i++){
      if (obj(i).checked)
        return i;
    }
  }
}
//将前面的后面的空格替换未空字符
function  String.prototype.trim(){
 return  this.replace(/(^\s*)|(\s*$)/g,"");

}


function document.onkeydown ()
{

 if(
 ((event.srcElement.type == 'button')&& (event.srcElement.className!='dateb'))
 ||event.srcElement.type == 'submit'
     ||event.srcElement.type == 'reset'
     ||event.srcElement.type == 'textarea'
 )
         {//alert(event.srcElement.type);
       }
 else if(event.keyCode == 13){
         event.keyCode = 9;
       //  alert("");
       }

}
//lj:判断数字sN1是否大于sN2,大于返回1,等于返回0,小于返回-1,错误返回－2
function compareNumber(sN1,sN2){
  var rst=-2;
  if (isNumber(sN1) && isNumber(sN2)){
    var iN1 = parseInt(sN1);
    var iN2 = parseInt(sN2);
    if (iN1>iN2) rst = 1;
    if (iN1==iN2) rst = 0;
    if (iN1<iN2) rst = -1;
  }
  return rst;
}
//lj:年月的有效性
function checkny(sNY){
    var rst=false;
    if (sNY.trim()=="") rst=true;
    if ((isNumber(sNY)) && (sNY.length==6)) {
      var DsNY=sNY.substr(0,4)+"-"+sNY.substr(4,2)+"-"+"01";
      //alert(DsNY);
      if (isDates(DsNY)) {
        rst=true;
      }
    }
    return rst;
}

//lj:判断年月sNY1是否大于年月sNY2,大于返回1,等于返回0,小于返回-1,错误返回－2
function compareNY(sNY1,sNY2){
  var rst=-2;
  if (checkny(sNY1) && checkny(sNY2) && (sNY1.trim() != "") && (sNY2.trim() != "")){
     var DsNY1=sNY1.substr(0,4)+"-"+sNY1.substr(4,2)+"-"+"01";
     var DsNY2=sNY2.substr(0,4)+"-"+sNY2.substr(4,2)+"-"+"01";
     rst=compareDay(DsNY1,DsNY2);
  }
  return rst;
}
//lj:年季的有效性
function checknj(sNY){
    var rst=false;
    if (sNY.trim()=="") rst=true;
    if ((isNumber(sNY)) && (sNY.length==6)) {
      var DsNY=sNY.substr(0,4)+"-"+sNY.substr(4,2)+"-"+"01";
      //alert(DsNY);
      if (isDates(DsNY)) {//先把季度当月看校验
        var sJD = sNY.substr(5,1);
        var JD = parseInt(sJD);
        if (!isNaN(JD) && (JD<=4))rst=true;
      }
    }
    return rst;
}
//lj:年月日的有效性（20010101：企业损益表中用）
function checknyd(sNYD){
    var rst=false;
    if (sNYD.trim()=="") rst=true;
    if ((isNumber(sNYD)) && (sNYD.length==8)) {
      var DsNYD=sNYD.substr(0,4)+"-"+sNYD.substr(4,2)+"-"+sNYD.substr(6,2);
      if (isDates(DsNYD))rst=true;
    }
    return rst;
}
//lj:判断年季sNY1是否大于年月sNY2,大于返回1,等于返回0,小于返回-1,错误返回－2
function compareNJ(sNY1,sNY2){
  var rst=-2;
  if (checkny(sNY1) && checkny(sNY2) && (sNY1.trim() != "") && (sNY2.trim() != "")){//把季度当月看校验
     var DsNY1=sNY1.substr(0,4)+"-"+sNY1.substr(4,2)+"-"+"01";
     var DsNY2=sNY2.substr(0,4)+"-"+sNY2.substr(4,2)+"-"+"01";
     rst=compareDay(DsNY1,DsNY2);
  }
  return rst;
}
//lj:在多条记录中使用
function getSelect_CheckBox(){
  var obj=document.all;
  var sel_id=new Array();
  if(obj.length){
     for (i=0,k=0; i<obj.length; i++ ){
         if((obj(i).type =="checkbox" )&&(obj(i).name =="mainKeyValue")){
             if (obj(i).checked){
                 sel_id[k++]=parseInt(obj(i).id.substring(12,obj(i).id.length));
             }
           }
      }
   }
  return sel_id;
}
//lj:在多条记录中使用
function isMySelect_CheckBox(){
	var obj=document.all;
  var flag=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="checkbox" )&&(obj(i).name =="mainKeyValue" )){
             if (obj(i).checked){
                 flag=1;
             }
           }
      }
   }
  if (flag==1)return true;
  if (flag==0)return false;
}
//lj:在多条记录中使用
function isMySum_CheckBox(sComp){
  var obj=document.all;
  var iSum=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if(obj(i).name == sComp){
           iSum++;
         }
      }
   }
  return iSum;
}
//lj:在多条记录中使用:排除id为空的
function isMySum_mainKeyValue(){
  var obj=document.all;
  var iSum=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).name == "mainKeyValue") && (obj(i).id.trim()!="")){
           iSum++;
         }
      }
   }
  return iSum;
}
//lj:在多条记录中使用
function getRowIndex_Muti(){
  var obj=document.all.mainKeyValue;
  if (obj.length>0){
    for (i=0;i<obj.length;i++){
      if (obj(i).checked)
        return i;
    }
  }
}
//lj:以下函数在多条记录中（带记录状态）使用--开始
function MySetState(frm,itail,isField){
   //取对应记录状态的旧值
   var bisNultiRcd=false;//是否为多条
   if (document.getElementById("_rcdstate1") != null) bisNultiRcd=true;
   var cur_rcdstatevalue="";//当前状态值
   var new_cheched=false;//是否选择
   var cur_rcdstate;//状态控件
   if (bisNultiRcd){
     cur_rcdstatevalue=frm._rcdstate[itail].value;
     new_cheched=frm.mainKeyValue[itail].checked;
     cur_rcdstate=frm._rcdstate[itail];
   }else{
     cur_rcdstatevalue=frm._rcdstate0.value;
     new_cheched=frm.mainKeyValue0.checked;
     cur_rcdstate=frm._rcdstate0;
   }
   //以下为在按钮上选择
   if (!isField){
       if (new_cheched)
       {
         if (cur_rcdstatevalue=="dsdelete") cur_rcdstate.value="dsedit";
         if (cur_rcdstatevalue=="dsbrowse") cur_rcdstate.value="dsinsert";
         if (cur_rcdstatevalue=="dsedit")   cur_rcdstate.value="dsedit";
       }else{
         if (cur_rcdstatevalue=="dsbrowse") cur_rcdstate.value="dsdelete";
         if (cur_rcdstatevalue=="dsedit")   cur_rcdstate.value="dsdelete";
         if (cur_rcdstatevalue=="dsinsert") cur_rcdstate.value="dsbrowse";
       }
   }
   //以下为在可编辑字段上
   if (isField){
         if (cur_rcdstatevalue=="dsbrowse") cur_rcdstate.value="dsedit";
   }
}
function MyValueChange(frm,sComponent){
   var old_value = sComponent.defaultValue;
   var new_value = sComponent.value;
   if (old_value != new_value){
     var sname=sComponent.name;
     var idname=sComponent.id;
     var iCJ = idname.length - sname.length;
     var tail=idname.substr(idname.length-iCJ,iCJ);
     var itail=parseInt(tail);
     if (isNaN(itail)) return false;
     MySetState(frm,itail,true)
   }
  return true;
}
function MySelect(frm,sComponent){
   var idname=sComponent.id;//取下标
   var tail=idname.substr(12,idname.length);
   var itail=parseInt(tail);
   if (isNaN(itail)) return false;
   MySetState(frm,itail,false)
   return true;
}
//为ID为sName＋iIndex付新值
function SetNew_ID(sName,iIndex,new_value)
{
  var obj=document.all;
  var sid=sName+iIndex.toString();
  var brst=false;
  if (obj.length>0){
    for (kkk=0;kkk<obj.length;kkk++){
      if (obj(kkk).id==sid){
        obj(kkk).value = new_value;
        brst = true;
        break;
        }
    }
  }
  return brst;
}
//得到ID为sName＋iIndex值
function GetNew_ID(sName,iIndex)
{
  var obj=document.all;
  var sid=sName+iIndex.toString();
  sid = sid.trim();
  var rst="";
  if (obj.length>0){
    for (kkk=0;kkk<obj.length;kkk++){
      if (obj(kkk).id==sid){
        rst = obj(kkk).value;
        break;
        }
    }
  }
  return rst;
}
//为ID为sName＋iIndex付新值
function SetNew_ID_Obj(pObj,sName,iIndex,new_value)
{
  var obj=pObj.all;
  var sid=sName+iIndex.toString();
  var brst=false;
  if (obj.length>0){
    for (kkk=0;kkk<obj.length;kkk++){
      if (obj(kkk).id==sid){
        obj(kkk).value = new_value;
        brst = true;
        break;
        }
    }
  }
  return brst;
}
//得到ID为sName＋iIndex值
function GetNew_ID_Obj(pObj,sName,iIndex)
{
  var obj=pObj.all;
  var sid=sName+iIndex.toString();
  sid = sid.trim();
  var rst="";
  if (obj.length>0){
    for (kkk=0;kkk<obj.length;kkk++){
      if (obj(kkk).id==sid){
        rst = obj(kkk).value;
        break;
        }
    }
  }
  return rst;
}
//lj:以上函数在多条记录中（带记录状态）使用--结束
//lj:返回日期间相差的月数
function get_Months(DateA, DateB)
{
	var months = (parseFloat(DateB.substr(0,4)) - parseFloat(DateA.substr(0,4))) * 12;

	var addmonths = parseFloat(DateB.substr(5,2)) - parseFloat(DateA.substr(5,2));
	months = months + addmonths;
	//if(Date2.getDate() < Date1.getDate())
	//	months--;
	return months;
}
//lj:将多关键字的MainKeyValue搞成数组返回
function get_KeyArr(pKey,token)
{
    var sKey = pKey.trim();
    var temp = sKey.replace(String.valueOf(token), "");
    var len = sKey.length - temp.length + 1;
    var my_array = new Array(len);
    var i = 0;
    while (true) {
      var pos = sKey.indexOf(token);
      if (pos == -1) {
        my_array[i] = sKey.trim();
        break;
      }
      my_array[i++] = sKey.substring(0, pos).trim();
      sKey = sKey.substring(pos + 1);
    }
    return my_array;
}
//lj:将指定的float按照指定的格式返回;j为小数位数
function getFloatStr(f,j)
{
       if(!isFloat(f))return "";
       f = f * Math.pow(10,j);
       var iValue = Math.round(f);
       iValue = iValue / Math.pow(10,j);
       return iValue;
 }
//lj:年的有效性
function checkyear(sNY){
    var rst=false;
    if (sNY.trim()=="") rst=true;
    if ((isNumber(sNY)) && (sNY.length==4)) {
      var DsNY=sNY.substr(0,4)+"-"+"01"+"-"+"01";
      if (isDates(DsNY)) {
        rst=true;
      }
    }
    return rst;
}
//lj:判断年sNY1是否大于年sNY2,大于返回1,等于返回0,小于返回-1,错误返回－2
function compareyear(sNY1,sNY2){
  var rst=-2;
  if (checkyear(sNY1) && checkyear(sNY2) && (sNY1.trim() != "") && (sNY2.trim() != "")){
     var DsNY1=sNY1.substr(0,4)+"-"+"01"+"-"+"01";
     var DsNY2=sNY2.substr(0,4)+"-"+"01"+"-"+"01";
     rst=compareDay(DsNY1,DsNY2);
  }
  return rst;
}
 function checknd(nd){
    var rst=false;
    if ((isNumber(nd)) && (nd.length==4)) {
      var DsNY=nd+"-"+"12"+"-"+"01";
      //alert(DsNY);
      if (isDates(DsNY)) {
        rst=true;
      }
    }
    return rst;
}
//得到两个日期间的月数差
function getMonths(dateA,dateB,accept){
  if ((dateA.value.trim()!="")&&(dateB.value.trim()!="")){
    accept.value = get_Months(dateA.value,dateB.value);
  }else{
    accept.value="";
  }

}
//权限控制
function authod(adev){
    if (adev.trim()=="") return true;
    var obj = document.all;
    var index=-1;
    if (obj.length>0){
      for (var i=0;i<obj.length;i++){
        if ((obj(i).type=="button")||(obj(i).type=="submit")){
           if (obj(i).id!=null){
             if (obj(i).id.substring(0,3)=="add"){
               index = adev.indexOf("A");
               if (index==-1){
                 obj(i).disabled=false;
                 obj(i).className="buttonDisable";
               }
             }
             if (obj(i).id.substring(0,3)=="del"){
               index = adev.indexOf("D");
               if (index==-1){
                 obj(i).disabled=true;
                 obj(i).className="buttonDisable";
               }
             }
             if (obj(i).id.substring(0,3)=="vie"){
               index = adev.indexOf("V");
               if (index==-1){
                 obj(i).disabled=true;
                 obj(i).className="buttonDisable";
               }
             }
             if (obj(i).id.substring(0,3)=="edi"){
               index = adev.indexOf("E");
               if (index==-1){
                 obj(i).disabled=true;
                 obj(i).className="buttonDisable";
               }
             }
             if (obj(i).id.substring(0,3)=="save"){
               var index1 = adev.indexOf("A");
               index = adev.indexOf("E");
               if ((index==-1)&&(index1==-1)){
                 obj(i).disabled=true;
                 obj(i).className="buttonDisable";
               }
             }
           }
        }
      }
    }
  }


  function isExistsData(){
  var obj=document.all;
  var flag=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="radio" )&&(obj(i).name =="MainKeyValue" )){
             if (obj(i).disabled==false){
                 flag=1;
             }
           }
      }
   }
  if (flag==1)return true;
  if (flag==0)return false;
}

function isFrameSelect_Radio(myform){
  var obj=myform.all;
  var flag=0;
  if(obj.length){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="radio" )&&(obj(i).name =="MainKeyValue" )){
             if (obj(i).checked){
                 flag=1;
             }
           }
      }
   }
  if (flag==1)return true;
  if (flag==0)return false;
}
function SelectRadioValue(myform){
  var obj = myform.all;
  var flag=0;
  if(obj.length>0){
     for (i=0; i<obj.length; i++ ){
         if((obj(i).type =="radio" )&&(obj(i).name =="MainKeyValue" )){
             if (obj(i).checked){
                 return obj(i).value;
             }
           }
      }
   }
  if (flag==1)return true;
  if (flag==0)return false;
}
function getFrameRowIndex(myform){
  var obj=myform.all.MainKeyValue;
  if (obj.length>0){
    for (i=0;i<obj.length;i++){
      if (obj(i).checked)
        return i;
    }
  }
}

// 两个Table 进行数据移动
//数组删除
 Array.prototype.del=function(n) {  //n表示第几项，从0开始算起。
  if(n<0)  //如果n<0，则不进行任何操作。
    return this;
  else
    return this.slice(0,n).concat(this.slice(n+1,this.length));
    /*
      concat方法：返回一个新数组，这个新数组是由两个或更多数组组合而成的。
      　　　　　　这里就是返回this.slice(0,n)/this.slice(n+1,this.length)
     　　　　　　组成的新数组，这中间，刚好少了第n项。
      slice方法： 返回一个数组的一段，两个参数，分别指定开始和结束的位置。
    */
 }

 Array.prototype.IndexOf = function(key){
   for (var i=0;this.length;i++){
     if (this[i]==key)
       return i;
   }
   return -1;
 }

 function arrlocate(arr,key){
   for (var i=0;i<arr.length;i++){
     if (arr[i]==key)
       return true;
   }
   return false;
 }

 /******************************/
 // frame1 为左边的框架 frame2右边的框架 cells 显示的列的集合(例如1，2列，则写成1,2) movecols 要移动的列的集合
 function ToRight(myForm,frame1,frame2,cells,movecols){
    var keylist = myForm.keylist.value.trim();
    var arr = keylist.split(",");
    var index=0;
    var currkey="";
    var arrcells = cells.split(",");
    var arrmovecols = movecols.split(",");
    var obj = frame1.form1.MainKeyValue;
    if (obj!=null){
       for (var i=0;i<obj.length;i++){
         if (obj(i).checked){
           index = i;
           var msg="";
           currkey = obj(index).value.trim();
           if (arrlocate(arr,currkey)){
              for (i=0;i<arrcells.length;i++){
               msg+= frame1.MainTable.rows(0).cells(parseInt(arrcells[i])).innerText+":"+frame1.MainTable.rows(index+1).cells(parseInt(arrcells[i])).innerText+" ";
              }
              alert(msg.trim()+" 已经选择");
              return false;
           }
           obj(index).checked = false;
           keylist+=currkey+",";
           myForm.keylist.value = keylist.trim();
           var rowobj;
           var cellobj;
           rowobj = frame2.MainTable.insertRow();
           rowobj.className="listw";
           cellobj = rowobj.insertCell();
           cellobj .className="listb";
           cellobj.innerHTML="<input type='checkbox' name='MainKeyValue' value="+currkey+">";
           for (i=0;i<arrmovecols.length;i++){
            cellobj = rowobj.insertCell();
            cellobj .className="listb";
            cellobj.innerText=frame1.MainTable.rows(index+1).cells(parseInt(arrmovecols[i])).innerText.trim();
            //改变已选css
            frame1.MainTable.rows(index+1).cells(parseInt(arrmovecols[i])).className="listc";
          }
          return true;
        }

      }
   }

}



 function ToLeft(myForm,frame1,frame2,changecols){
   var keylist = myForm.keylist.value.trim();
   var arrkeylist = keylist.split(",");
   var arrcols = changecols.split(",");
   //判断表是否有数据
   var bExistData = false;
   var obj = frame2.form1.all;

   if (obj!=null){
     if (obj.length>0){
       for (var i=0;i<obj.length;i++){
         if (obj(i).type=="checkbox"&&obj(i).name=="MainKeyValue"&&obj(i).checked==true){
           bExistData = true;
         }
       }
     }
   }
   if (!bExistData){
     alert("没有选择数据!");
     return false;
   }
   var obj = frame2.form1.MainKeyValue;
   var index = 0;
   var currkey = "";


   if (obj!=null){
     if (obj.length>0){
       for (var i=0;i<obj.length;i++){
         if (obj(i).checked){
           index = i ;
           currkey = obj(i).value.trim();
           frame2.MainTable.deleteRow(index+1);
           var arrIndex =-1;
           arrIndex  = arrkeylist.IndexOf(currkey);

           if (arrIndex>=0){
             //在keylist中删除选中的ID
             arrkeylist=arrkeylist.del(arrIndex);
             myForm.keylist.value = arrkeylist.toString(Array);
             var obj1 = frame1.form1.MainKeyValue;
             var rowIndex =-1;

             //如果当前页中存在选中的记录，则改变已选css
             if (obj1!=null){
                for (var j=0;j<obj1.length;j++){

                  if (obj1(j).value.trim()==currkey){
                    rowIndex = j;
                    break;
                  }

                }
                if (rowIndex>=0){
                 for (var j=0;j<arrcols.length;j++){
                   frame1.MainTable.rows(rowIndex+1).cells(parseInt(arrcols[j])).className="listb";
                 }
               }
             }

           }

           return true;
         }
       }
     } else{
       if (obj.checked==true){
          currkey = obj.value.trim();
          index  = 0;

          frame2.MainTable.deleteRow(index+1);

          var arrIndex =-1;
          arrIndex  = arrkeylist.IndexOf(currkey);
          if (arrIndex>=0){
             arrkeylist=arrkeylist.del(arrIndex);
             myForm.keylist.value = arrkeylist.toString(Array);
             var obj1 = frame1.form1.MainKeyValue;
              var rowIndex =-1;
                  //如果当前页中存在选中的记录，则改变已选css
             if (obj1!=null){
                for (var j=0;j<obj1.length;j++){

                  if (obj1(j).value.trim()==currkey){
                    rowIndex = j;
                    break;
                  }

                }
                if (rowIndex>=0){
                 for (var j=0;j<arrcols.length;j++){
                   frame1.MainTable.rows(rowIndex+1).cells(parseInt(arrcols[j])).className="listb";
                 }
               }
             }
          }

       }
     }
   }


 }
 function RAll(myForm,frame1,frame2,cells,movecols){

   // 已选数据的ID
   var keylist = myForm.keylist.value.trim();
   var arrkeylist = keylist.split(",");
   // 存放行号
   var arrRow = new Array();
   // 将要选择的数据的ID
   var arrId  = new Array();
   // 要提示的列
   var arrcell = cells.split(",");
   // 要移动的列
   var movecol = movecols.split(",");
   //
   var obj = frame1.form1.MainKeyValue;
   var index = 0;
   var msg = "";
   //得到所选的行的行号
   if (obj!=null){
    if (obj.length>0){
      for (var i=0;i<obj.length;i++){
        if (obj(i).checked){
          arrRow[index] = i;
          arrId[index] = obj(i).value.trim();
          index++;
        }
      }
    }
   }

   if (arrRow.length<=0){
     alert("没有选择数据！");
     return false;
   }
   // 验证数据是否已选
   for (var i=0;i<arrRow.length;i++){
      if (arrlocate(arrkeylist,arrId[i])){
         for (j=0;j<arrcell.length;j++){
          // alert(arrRow[i]+1) ;
           msg+= frame1.MainTable.rows(0).cells(parseInt(arrcell[j])).innerText+":"+frame1.MainTable.rows(arrRow[i]+1).cells(parseInt(arrcell[j])).innerText+" ";
         }
         alert(msg+"已选择!");
         return false;
      }
   }
   var currkey = "";
   var rowobj;
   var cellobj;
   //将选择的数据填充右边的Table
   for (var i=0;i<arrRow.length;i++){
     obj(arrRow[i]).checked = false;
     currkey = arrId[i].trim();
     keylist+=currkey+",";
     rowobj = frame2.MainTable.insertRow();
     rowobj.className="listw";
     cellobj = rowobj.insertCell();
     cellobj .className="listb";
     cellobj.innerHTML="<input type='checkbox' name='MainKeyValue' value="+currkey+">";
     for (j=0;j<movecol.length;j++){
        cellobj = rowobj.insertCell();
        cellobj.className="listb";
        cellobj.innerText=frame1.MainTable.rows(arrRow[i]+1).cells(parseInt(movecol[j])).innerText.trim();
        //改变已选css
        frame1.MainTable.rows(arrRow[i]+1).cells(parseInt(movecol[j])).className="listc";
     }
   }
   myForm.keylist.value = keylist.trim();

 }
 function LAll(myForm,frame1,frame2,cols){
   var keylist = myForm.keylist.value.trim();
   var arrkeylist = keylist.split(",");
   var arrcols = cols.split(",");
   //判断表是否有数据
   var bExistData = false;
   var obj = frame2.form1.all;
   if (obj!=null){
     if (obj.length>0){
       for (var i=0;i<obj.length;i++){
         if (obj(i).type=="checkbox"&&obj(i).name=="MainKeyValue"&&obj(i).checked==true){
           bExistData = true;
         }
       }
     }
   }
   if (!bExistData){
     alert("没有选择数据!");
     return false;
   }
   obj = frame2.form1.MainKeyValue;
   var arrRow = new Array();
   var arrId  = new Array();
   var index = 0;
   var indexRow =-1;
   var currkey = "";
   if (obj!=null){
     if (obj.length>0){
       for (var i=0;i<obj.length;i++){
         if (obj(i).checked){
           arrRow[index] = i;
           arrId[index] = obj(i).value.trim();
           index++;
         }
       }
     }
     obj1 = frame2.form1.MainKeyValue;
     if (obj1.length>0){

     }else{
          if (obj.checked==true){
          currkey = obj.value.trim();
          index  = 0;

          frame2.MainTable.deleteRow(index+1);

          var arrIndex =-1;
          arrIndex  = arrkeylist.IndexOf(currkey);
          if (arrIndex>=0){
             arrkeylist=arrkeylist.del(arrIndex);
             myForm.keylist.value = arrkeylist.toString(Array);
             var obj1 = frame1.form1.MainKeyValue;
              var rowIndex =-1;
                  //如果当前页中存在选中的记录，则改变已选css
             if (obj1!=null){
                for (var j=0;j<obj1.length;j++){

                  if (obj1(j).value.trim()==currkey){
                    rowIndex = j;
                    break;
                  }

                }
                if (rowIndex>=0){
                 for (var j=0;j<arrcols.length;j++){
                   frame1.MainTable.rows(rowIndex+1).cells(parseInt(arrcols[j])).className="listb";
                 }
               }
             }
          }

       }
       return true;

     }
     for (var i=arrRow.length-1;i>=0;i--){
       currkey = arrId[i].trim();
       index = arrRow[i];
       frame2.MainTable.deleteRow(index+1);
       indexRow = arrkeylist.IndexOf(currkey);
       arrkeylist = arrkeylist.del(indexRow);
       if (obj1!=null){
          for (var j=0;j<obj1.length;j++){
             if (obj1(j).value.trim()==currkey){
                indexRow = j;
                break;
             }
          }
          if (indexRow>=0){
            for (var j=0;j<arrcols.length;j++){
               frame1.MainTable.rows(indexRow+1).cells(parseInt(arrcols[j])).className="listb";
            }
          }
       }
     }
     myForm.keylist.value = arrkeylist.toString(Array);
   }else{
     alert("");
     LLeft(myForm,frame1,frame2,cols);
   }
 }

 function  getCSRQ(comp,sfz){
   var ret = "";
   if (getLength(sfz)==15){
       ret = "19"+sfz.substr(6,2)+"-"+sfz.substr(8,2)+"-"+sfz.substr(10,2);
   }
   if (getLength(sfz)==18){
       ret = sfz.substr(6,4)+"-"+sfz.substr(10,2)+"-"+sfz.substr(12,2);
   }
   if (ret.trim()!="")  comp.value = ret;
 }

//根据系统日期计算年龄
function CalNL(sysdate,csrq){
  alert
  if (csrq=="")
    return "";
  if (!isDate(csrq)){
    alert("出生日期输入不正确！");
    return "";
  }
  sysNf = parseFloat(sysdate.substr(0,4));
  csNf = parseFloat(csrq.substr(0,4));
  return sysNf-csNf;
}
//几个控件的值相加返回到一个控件上例如
function CalValueSum(retObj,sObj){
  var fValue;
  var tempValue;
  var obj;
  var arrObj = new Array();
  fValue = 0;
  arrObj = sObj.split(",");
  for (var i=0;i<arrObj.length;i++){
    obj = document.getElementById(arrObj[i]);
    if (obj.value.trim()=="") obj.value ="0";
    try{
      fValue +=parseFloat(obj.value);
    }catch(e){
      obj.value = "0";
    }
  }
  retObj.value = fValue;

}
function  PageControlDisable(){
   var obj = document.all;
    if (obj.length>0){
      for (var i=0;i<obj.length;i++){
        if (obj(i).type=="text"){
           if (obj(i).className=="textEnable"){
             obj(i).className="textDisable";
             obj(i).readOnly = true;
           }
           if (obj(i).className=="textDateEnable"){
             obj(i).className="textDateDisable";
             obj(i).readOnly = true;
           }
        }
        if (obj(i).type=="select-one"){
          obj(i).disabled = true;
        }
         if (obj(i).type=="button"&&obj(i).name=="btn"){
          obj(i).disabled = true;
        }

      }
    }
}
function SelectEnable(){
    var obj = document.all;

    if (obj.length>0){
      for (var i=0;i<obj.length;i++){
          if (obj(i).type=="select-one"){
          obj(i).readonly = true;
        }

      }
    }
}

function checkloginname(sname){
    var exp="^[a-zA-Z][a-zA-Z0-9_]{4,20}";
    var objExp=new RegExp(exp);
    return objExp.test(sname);
}
function checkPassWord(sPassWord){
    var exp="^[a-zA-Z0-9_]{6,20}";
    var objExp=new RegExp(exp);
    return objExp.test(sPassWord);
}
function checkQq(sQq){
    
    if (sQq=="") return true;    
    var exp="[0-9]{4,20}";
    var objExp=new RegExp(exp);
    return objExp.test(sQq);
}
function checkUrl(sUrl){
 return true;
/*
  var pattern = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
    if(!pattern.exec(sUrl))
        alert("URL格式不正确");

  if (sUrl=="") return true;
  var exp="http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w-.\/?%&=]*)?";
  var objExp=new RegExp(exp);
  return objExp.test(sUrl);
  */
}
function getRadioValue(sName){
 var obj= document.all;
 for (var i=0;i<obj.length;i++){
   if (obj[i].name==sName){
     if (obj[i].type=="radio"&&obj[i].checked){
       return obj[i].value;
     }
   }
 }
 return "";
}
function isDate(str){ 
var reg = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/
if (reg.test(str)) return true;
return false;
}
