Liana 3.0 系统JS公用函数库

Liana 3.0 系统JS公用函数库////Liana3.0系统JS公用函数库////-

//———————————————————-
// Liana 3.0 系统JS公用函数库
//
//———————————————————-

//———————————————————-
// 函数名:卡号域键盘输入控制函数
// 描述:限制键盘输入,卡号只许输入数字,及功能键(退格[<-]、del[del]、方向键[右]、方向键[左])
// 示例:<input type=”text” name=”a” value=””   onKeyDown=”inputCardNo();”>
//  author : lixuefeng
//  create date: 2005-11-03
//  修改记录:
//  2005-11-04:增加小键盘数字输入功能
//  2005-11-04:屏蔽shift健、ctrl健、alt健
//———————————————————-
function inputCardNo(){

 if(event.keyCode==9)
 {

  event.returnValue=true;
 } 
 else
 {

  if(event.shiftKey || event.ctrlKey || event.altKey){

   event.returnValue=false;
  }
  if(event.keyCode!=8 && event.keyCode !=37 && event.keyCode !=39 && event.keyCode !=46){

   if(event.keyCode < 48||(event.keyCode > 57 && event.keyCode<96) || event.keyCode>105){

    event.returnValue=false;
   } 
  }
 } 
}

// 得到一个文本框控件的当前光标位置
function getPos(obj){

obj.focus();
var workRange=document.selection.createRange();
obj.select();
var allRange=document.selection.createRange();
workRange.setEndPoint(“StartToStart”,allRange);
var len=workRange.text.length;
workRange.collapse(false);
workRange.select();
return len;
}
// 设置一个文本框控件的当前光标位置
function setCursor(obj,num){

range=obj.createTextRange();
range.collapse(true);
range.moveStart(‘character’,num);
range.select();
}

//———————————————————-
// 金额域输入控制函数
// 示例:
// 1.控制金额域只能输入合法的金额数值(不含角分)
//  <input type=”text” name=”a” value=””  onKeyUp=”inputMoney3(this,0)”  οnblur=”inputMoney(this,0)”>
// 2.控制金额域只能输入合法的金额数值(含角分)
//  <input type=”text” name=”a” value=””  onKeyUp=”inputMoney3(this,1)”  οnblur=”inputMoney(this,1)”>
//  注意:在引用本文件前,请确定已经引用了Liana 3.0 系统JS公用函数库 (public.js)
//  author : lixuefeng
//  date:2005-10-26
//  修改历史:
//  2005-10-29:增加控制光标移动的功能函数,函数inputMoney3(obj,flg)中添加了该控制。
//  由<input type=”text” name=”a” value=””  onKeyUp=”inputMoney(this,1)”  οnblur=”inputMoney(this,1)”>
//  改为:
//  <input type=”text” name=”a” value=””  onKeyUp=”inputMoney3(this,1)”  οnblur=”inputMoney(this,1)”>
//  可消除光标不能通过键盘移动的bug和不能在金额中间连续输入数字的bug
//  2005-11-08:控制整数位不大于12位。
//———————————————————-

//———————————————————-
// 检查变量是否是合法的金额
// 返回值:
// true: 合法
// false: 不合法
//———————————————————-
function moneyCheck(str) {
 var length1 , i , j;
 var string1=””; 
 str = javaTrim(str);
 string1=str;
 length1 = string1.length; 
 if (str.charAt(0)==”0″ ){

  if (length1 == 2){

   if (!(str.charAt(1)==”.”)){

          //alert(“金额首位不能为0,请重新填写!”);
          return(false);
      }
  }
    }
    if(str.charAt(0)==”.”)
    return false;
 j=0;
 for (i = 0 ; i < length1 ; i++) {  //判断每位数字
  if(isNaN(parseInt(str.charAt(i),10)))  {

   if(str.charAt(i) != “.”){

    return(false);
   }
   else{

    j++;
    if(length1 – i > 3 ){

     return(false);}
    }
   }  
 }
 if(j > 1) {

  return(false);
 }
 if(str.length>12 ){//判断整数位是否大于12位
  var intlen = str.indexOf(“.”);
  if(intlen<0 || intlen>12){

   return (false);
  }
 }
 
 return (true);
}

//———————————————————-
// 控制输入域只能输入金额如1.00、1.0、1等
// 变量:obj -输入域对象;flg – 是否允许输入角分(0:不允许;1:允许)
// 返回值:
//———————————————————-
var strLast = “”;//上次输入的字符串
var strNow = “”;//本次输入的字符串
function inputMoney(obj,flg){

 //var pos = getPos(obj);
 strNow = obj.value;
 var isIntChar = “”;
 if(flg==0){

  isIntChar = RegExp(/^[0-9]+$/);
 }
 else {

  isIntChar = RegExp(/^[.0-9]+$/);
 }
 if(strNow.length>0 && !isIntChar.test(strNow))
 {

  obj.value=strLast;
  //setCursor(obj,pos-1);
  return;
 }
 if(!moneyCheck(strNow)){

  obj.value=strLast;
  //setCursor(obj,pos-1);
  return;
 }
 obj.value=strNow;
 /*
 var num ;
 if(strNow.length-strLast.length>0){

  num=pos + strNow.length-strLast.length-1;
 } 
 else{

  num=pos;
 }
 setCursor(obj,num);
 */
 strLast = strNow;
}

function inputMoney3(obj,flg){

 var pos = getPos(obj);
 strNow = obj.value;
 var isIntChar = “”;
 if(flg==0){

  isIntChar = RegExp(/^[0-9]+$/);
 }
 else {

  isIntChar = RegExp(/^[.0-9]+$/);
 }
 if(strNow.length>0 && !isIntChar.test(strNow))
 {

  obj.value=strLast;
  setCursor(obj,pos-1);
  return;
 }
 if(!moneyCheck(strNow)){

  obj.value=strLast;
  setCursor(obj,pos-1);
  return;
 }
 obj.value=strNow;
 
 var num ;
 if(strNow.length-strLast.length>0){

  num=pos + strNow.length-strLast.length-1;
 } 
 else{

  num=pos;
 }
 setCursor(obj,num);
 
 strLast = strNow;
}

 

//———————————————————-
// 检查变量是否是浮点数
// 返回值:
// true: 是浮点数
// false: 不是浮点数
//———————————————————-
function isDecimal( s )
{

 var isDecimal = RegExp(/^([0-9]+(/.?))?[0-9]+$/);
 return ( isDecimal.test(s) );
}

//———————————————————-
// 判断输入的是不是数字或者字母
// 输入:theStr 为字符串
// 返回值:true:是false:不是
//———————————————————-
function isIntChar( s )
{

  var isIntChar = RegExp(/^[a-zA-Z0-9]+$/);
 return ( isIntChar.test(s) );
 }
 
 //———————————————————-
// 判断输入的是不是数字或者字母或者特殊字符
// 输入:theStr 为字符串
// 返回值:true:是false:不是
//———————————————————-
function isIntChar2( s )
{

 var isIntChar2 = RegExp(/^[a-zA-Z0-9(/_)(/-)(/*)(/&)(/%)(/$)(/#)(/@)(/!)(/~)(/^)(/()(/))]+$/);
 return ( isIntChar2.test(s) );
}
/**
*判断是否合法昵称(登录名)
**/
function isLegalNickName(s)
{

 var isNickName = RegExp(/^[a-zA-Z0-9/_/./@]+$/);
 return ( isNickName.test(s) );
}
 
//———————————————————-
// 对数据域重新进行编码
// 输入:数据域
// 返回值:
// 编码后的数据域
//———————————————————-
function encode(s)
{

 if(s == null )
  return s;
 if(s.length == 0)
  return s;
 
 var ret = “”;
 for(i=0;i<s.length;i++)
 {

  var c = s.substr(i,1);
  var ts = escape(c);
  if(ts.substring(0,2) == “%u”)
  {

   ret = ret + ts.replace(“%u”,”@@”);
  } else {

   ret = ret + c;
  }
 }
 return ret;
}

//———————————————————-
// 检验账号合法性
// 输入:账号的字符串
// 返回值:
// true:账号合法
// false:账号不合法
//———————————————————-
function validateAccount(account,length)
{

 if( isEmpty(account) )
 {

  alert(“账号不能为空!”);
  return false;
 }
 
 if( !isInteger(account) )
 {

  alert(“账号必须为数字!”);
  return false;
 }
 
 if( isShorter(account,length) )
 {

  alert(“账号长度为”+length+”位!”);
  return false;
 } 
 
 return true;
}

//———————————————————-
// 百分率格式化
// 输入:0~100间的字符串
// 返回值:
// 格式化后的字符串
//———————————————————-
function getFmtRate(str)
{

 var rate = parseInt(str);
 
 if ( rate > 100 || rate < 0 )
  return(“-1”);
 
 return (rate/100);
}

//———————————————————-
// 检查变量是否为空
// 返回值:
// true:为空
// false:不为空
//———————————————————-
function isEmpty(e)
{

 if( trim(e) == “” )
  return true;
 else
  return false;
}

//———————————————————-
//  去掉字符串前后的空格
// 返回值:
// 去除空格后的字符串
//———————————————————-
function trim(param) {

 if ((vRet = param) == ”) { return vRet; }
 while (true) {

  if (vRet.indexOf (‘ ‘) == 0) {

   vRet = vRet.substring(1, parseInt(vRet.length));
  } else if ((parseInt(vRet.length) != 0) && (vRet.lastIndexOf (‘ ‘) == parseInt(vRet.length) – 1)) {

   vRet = vRet.substring(0, parseInt(vRet.length) – 1);
  } else {

   return vRet;
  }
 }
}

//———————————————————-
//  检查输入文本框中是否包含“|”或“#”非法字符
// 返回值:
// true: 合法
// false: 非法
//———————————————————-
function isValidText(param) {

 if ((param.indexOf(‘|’) >= 0) || (param.indexOf(‘#’) >= 0) ) {

  alert(““|”和“#”为系统保留字符,请不要输入!”);
  return false;
 }
 return true;
}

//———————————————————-
// 检查变量的长度比给出的长度短
// 返回值:
// true: 变量长度<给出的长度
// false: 变量长度>=给出的长度
//———————————————————-

function isShorter(str,reqlength)
{

 if( str.length<reqlength )
  return true;
 else
  return false;
}

//———————————————————-
// 检查变量是否是整数
// 返回值:
// true: 是整数
// false: 不是整数
//———————————————————-
function isInteger( s )
{
 var isInteger = RegExp(/^[0-9]+$/);
 return ( isInteger.test(s) );
}

//———————————————————-
// 检验金额
// 返回值:
// true: 合法
// false: 非法
//———————————————————-
function isMoney(param) {

 if ((isNaN(param)) || (parseFloat(param) < 0) || (param.indexOf(‘.’) == 0) || (param.lastIndexOf(‘.’) == param.length – 1)) {

  return false;
 }
 //不支持科学计数
 if(param.indexOf(‘e’) > 0) {

  return false;
 }
 //小数点后最多只允许保留两位有效数字 
 var docIndex = trim(param).lastIndexOf(‘.’);
 if ((docIndex < parseInt(trim(param).length) – 3) && (docIndex >= 0)) {

  return false;
 }
 if (param.charAt(0)==”0″ )
 {        
    if (!(param.charAt(1)==”.”))
    {    
    return false;
  }      
 }
 return true;
}

//———————————————————-
// 检验金额(允许input 0)
// 返回值:
// true: 合法
// false: 非法
//  for netpay 20061012 xjk
//———————————————————-
function isMoney2(param) {

 if ((isNaN(param)) || (parseFloat(param) < 0) || (param.indexOf(‘.’) == 0) || (param.lastIndexOf(‘.’) == param.length – 1)) {

  return false;
 }
 //不支持科学计数
 if(param.indexOf(‘e’) > 0) {

  return false;
 }
 //小数点后最多只允许保留两位有效数字 
 var docIndex = trim(param).lastIndexOf(‘.’);
 if ((docIndex < parseInt(trim(param).length) – 3) && (docIndex >= 0)) {

  return false;
 }
 
 return true;
}

//———————————————————-
// 检验价格
// 返回值:
// true: 合法
// false: 非法
//———————————————————-
function isPrice(param) {

 if ((isNaN(param)) || (parseFloat(param) < 0) || (param.indexOf(‘.’) == 0) || (param.lastIndexOf(‘.’) == param.length – 1)) {

  return false;
 }
 //不支持科学计数
 if(param.indexOf(‘e’) > 0) {

  return false;
 }
 //小数点后最多只允许保留四位有效数字 
 var docIndex = trim(param).lastIndexOf(‘.’);
 if ((docIndex < parseInt(trim(param).length) – 5) && (docIndex >= 0)) {

  return false;
 }
 return true;
}

//———————————————————-
//  检验日期是否符合YYYYMMDD的格式
// 返回值:
// true: 日期合法
// false: 日期不合法
//———————————————————-
function isDate(param) {

 var pattern = /^/d+$/;
 if ( param.length != 8 ) {

  return false;
 }
 if(!pattern.test(param)) {

  return false;
 }
 sYear = param.substring( 0, 4 );
 sMonth = param.substring( 4, 6 );
 sDay = param.substring( 6, 8 );
 if ( ( eval( sMonth ) < 1 ) || ( eval( sMonth )  > 12 ) ) {

  return false;
 }
 var leapYear = ((( sYear % 4 == 0 ) && ( sYear % 100 != 0 )) || ( sYear % 400 == 0 )) ? true : false;
 var monthDay = new Array(12);
 monthDay[0] = 31;
 monthDay[1] = leapYear ? 29 : 28;
 monthDay[2] = 31;
 monthDay[3] = 30;
 monthDay[4] = 31;
 monthDay[5] = 30;
 monthDay[6] = 31;
 monthDay[7] = 31;
 monthDay[8] = 30;
 monthDay[9] = 31;
 monthDay[10] = 30;
 monthDay[11] = 31;
 if ( ( eval( sDay ) < 1 ) || ( eval( sDay )  > monthDay[eval(sMonth)-1] ) ) {

  return false;
 }
 return true;
}

//———————————————————-
//  检查email合法性
// 返回值:
// true: 合法
// false: 不合法
//———————————————————-
function isEmail(aEmail) {

 var bValidate = RegExp(/^/w+((-/w+)|(/./w+))*/@[A-Za-z0-9]+((/.|-)[A-Za-z0-9]+)*/.[A-Za-z0-9]+$/).test(aEmail);
 
 if ( bValidate )
 {

  return true;
 }
 else
  return false;
}

//———————————————————-
// 选中某个数据域
//———————————————————-
function makeFocus(txtObject) {

 txtObject.focus();
 txtObject.select();
}

//———————————————————-
// 金额格式化
// 返回值:
// 格式化后的字符串
//———————————————————-
function toFmtMoney(str) {

 var subAmt = trim(str);
 if((subAmt.indexOf(“.”) == -1)||(subAmt.length == 1)) {

  subAmt = subAmt + “.00”;
 }
 if(subAmt.indexOf(“.”) == (subAmt.length – 2)) {

  subAmt = subAmt + “0”;
 }
 if(subAmt.indexOf(“.”) < (subAmt.length – 3)){

  subAmt = subAmt.substr(0, subAmt.indexOf(“.”) + 3);
 }
 return (subAmt);
}

//———————————————————-
// 限制键盘输入,只许输入数字
//———————————————————-
function inputNumber(){

 if(event.keyCode < 48||event.keyCode > 57){

  event.returnValue=false;
 }  
}

function disable_Button(name){

 name.disabled=1
}

function reload(name1){ 
 name1.reset();
}

//———————————————————-
//控制text域的最大输入长度
//用法:οnblur=”checkLength(this,要控制的长度);”,
//———————————————————-
function checkLength(v,l){

 var s = v.value;
 var len = 0;
   for(i=0;i<s.length;i++){

     var c = s.substr(i,1);
     var ts = escape(c);
     if(ts.substring(0,2) == “%u”) {

      len+=2;
     } else {

      len+=1;
     }
   }
   if(l>=len){

     return;
   }
   else{

 var aaa=Math.floor(l/2);
 alert(“该输入项插入值过长!最多”+l+”个字符或”+aaa+”个汉字。”);
    v.value = “”;
    v.focus();
   }
}

//———————————————————-
//控制textarea域的最大输入长度
//用法:οnblur=”checkAreaLength(this,要控制的长度);”
//———————————————————-
function checkAreaLength(v,l){

 var s= v.value;
 var temlen=0;
 var len = 0;
 for(i=0;i<s.length;i++){

     var c = s.substr(i,1);
     var ts = escape(c);

     if(ts.substring(0,2) == “%u”){

      len+=2;
      len+=temlen;
      temlen=0;
     }
     else if(ts.substring(0,3) == “%0D”){

      temlen+=1;
     }
     else if(ts.substring(0,3) == “%0A”){

         temlen+=1;
     }
     else if(ts.substring(0,3) == “%20”){

      temlen+=1;
     }
      else{

      len+=1;
      len+=temlen;
      temlen=0;
     }
   }
  if(len>l){

 var aaa=Math.floor(l/2);
 alert(“该输入项插入值过长!最多”+l+”个字符或”+aaa+”个汉字。”);   
    v.value = “”;
    v.focus();
    return false;
  }
  return true;
}

//———————————————————-
// 通用打印
//———————————————————-
function commonprint(title,divId,cardNo,branchName,width,height){

 //alert(“HELLO”);
 var sarg=new Array();
 var sdata=document.all.item(divId);
 sarg[0]=title;
 text = sdata.outerHTML;
 text = text.replace(/border=[^[1|/s]]*([/s|>])/ig,”border=1 style=’border-collapse:collapse’ bordercolor=’#000000’$1″);
 text = text.replace(/cellSpacing=[^[0|/s]]*([/s|>])/ig,”$1″);
 text = text.replace(/cellPadding=[^[0|/s]]*([/s|>])/ig,”$1″);
 text = text.replace(/<TABLE/ig,”<TABLE cellSpacing=0 cellPadding=0″);
 
 sarg[1]=text;
 sarg[2]=cardNo;
 sarg[3]=branchName;
 //alert(test);
 //alert(sarg[1]);
 window.showModalDialog(“print.jsp”,sarg,”dialogWidth:”+width+”px;dialogHeight:”+height+”px;center:yes;help:no;status:no;resizable:yes”);
 return;
}

//———————————————————-
// 对金额进行转换,将金额转换为以元为单位,小数点后有两位
// 例:输入域1234,转换后隐含域为1234.00
// Creation date: (2003-09-12) 
// @author: ecc-wangdong
// @version: 1.0
// @param:form, txtmoney, hidmoney
// @param说明:
//              FORM名,表现域名称,隐藏域名称
// @condition:该表现域已赋初值 
//———————————————————-
function convertToMoney(form,txtmoney,hidmoney){

    var tonumber;
    var re = /,/g;
    var txt_money = eval(“document.”+form+”.”+txtmoney);
    var hid_money = eval(“document.”+form+”.”+hidmoney);
    if (txt_money.value != “”){

     var temp = trim(txt_money.value);
     if (temp == “”){

      alert(“请输入正确的金额!”);
      txt_money.value=””;
    hid_money.value=””;
    txt_money.focus();
      return;
     }
    }
    tonumber = txt_money.value.replace(re,””);

    txt_money.value = “”;
    hid_money.value = “”;
   if (tonumber !=”” && tonumber!=null){

    rep = / /g;
  var amt = tonumber.replace(rep,””);
  
  for(var j = 0; j < amt.length; j++){

   if(isNaN(parseInt(amt.charAt(j),10)) && amt.charAt(j)!=”,” && amt.charAt(j)!=”.”) {

    alert(“请输入正确的金额!”);
    txt_money.value=””;
    hid_money.value=””;
    txt_money.focus();
    return;
   }
  }
  if(amt.indexOf(“.”)!=amt.lastIndexOf(“.”)){

   alert(“请输入正确的金额!”);
   txt_money.focus();
   return;
  }
 
  re = /,/g;
  var amt1 = amt.replace(re,””);

  var amt2=parseFloat(amt1);  
  if(amt2<=0){

   alert(“输入的金额小于或等于零,请重新输入!”);
   txt_money.focus();
   return;
  }else{  //大于0的正数;
   if(amt1.indexOf(“.”)!=-1){    
    var str = amt1.substr(amt1.indexOf(“.”)+1);    
    if(str.length>2){

     alert(“输入的金额小数点后只能保留两位,请重新输入!”);
     txt_money.focus();
     return;
    }else if(str.length==1){

     amt1=amt1 + “0”;
    }else if(str.length<1){

     amt1=amt1 + “00”;
    }
   }else{

    amt1=amt1 + “.00”;
   }
   if(amt1.charAt(0)==’0′ && amt1.indexOf(“.”)!=1){

   alert(“请输入正确的金额!”);
   txt_money.focus();
   return;
   }
   hid_money.value=amt1;
   var temp=amt1.substring(0,amt1.indexOf(“.”));
   if (temp.length > 10){

       alert(“输入的金额太大,请重新输入!”);
       txt_money.focus();
       return;
   }
   txt_money.value=comma(temp) + amt1.substring(amt1.indexOf(“.”));
   return;       
  }
    }
}

//———————————————————-
// 对金额进行转换,将金额转换为以分为单位
// Creation date: (2003-09-12) 
// @author: ecc-wangdong
// @version: 1.0
// @param:form, txtmoney, hidmoney
// @param说明:
//              FORM名,表现域名称,隐藏域名称
// @condition:该表现域已赋初值 
//———————————————————-
function convertToMoney2(form,txtmoney,hidmoney){

    var tonumber;
    var re = /,/g;
    var txt_money = eval(“document.”+form+”.”+txtmoney);
    var hid_money = eval(“document.”+form+”.”+hidmoney);
    tonumber = txt_money.value.replace(re,””);

    txt_money.value = “”;
    if (tonumber !=”” && tonumber!=null){

    rep = / /g;
  var amt = tonumber.replace(rep,””);
  
  for(var j = 0; j < amt.length; j++){

   if(isNaN(parseInt(amt.charAt(j),10)) && amt.charAt(j)!=”,” && amt.charAt(j)!=”.”) {

    alert(“请输入正确的金额!”);
    txt_money.value=””;
    txt_money.focus();
    return;
   }
  }
  if(amt.indexOf(“.”)!=amt.lastIndexOf(“.”)){

   alert(“请输入正确的金额!”);
   txt_money.focus();
   return;
  }
 
  re = /,/g;
  var amt1 = amt.replace(re,””);

  var amt2=parseFloat(amt1);  
  if(amt2<0){

   alert(“输入的金额小于零,请重新输入!”);
   txt_money.focus();
   return;
  }else{  //大于0的正数;
   if(amt1.indexOf(“.”)!=-1){    
    var str = amt1.substr(amt1.indexOf(“.”)+1);    
    if(str.length>2){

     alert(“输入的金额小数点后只能保留两位,请重新输入!”);
     txt_money.focus();
     return;
    }else if(str.length==1){

     amt1=amt1 + “0”;
    }else if(str.length<1){

     amt1=amt1 + “00”;
    }
   }else{

    amt1=amt1 + “.00”;
   }
   if(amt1.charAt(0)==’0′ && amt1.indexOf(“.”)!=1){

   alert(“请输入正确的金额!”);
   txt_money.focus();
   return;
   }
   hid_money.value=amt1.substring(0,amt1.indexOf(“.”)) + amt1.substr(amt1.indexOf(“.”)+1);
   var temp=amt1.substring(0,amt1.indexOf(“.”));
   if (hid_money.value.length > 18){

       alert(“金额太大”);
       txt_money.focus();
       return;
   }
   txt_money.value=comma(temp) + amt1.substring(amt1.indexOf(“.”));
   return;       
  }
    }
}

//—————————————————————————
// 表现形式增加逗号,只对整数部分做处理,由上一个函数调用。
// Creation date: (2003-09-12) 
// @author: ecc-handong
// @version: 1.0
// @param:number
// @param说明:需转换数值 
//—————————————————————————

function comma(number) {

 number = ” + number;
 if (number.length > 3) {

  var mod = number.length % 3;
  var output = (mod > 0 ? (number.substring(0,mod)) : ”);
  for (i=0 ; i < Math.floor(number.length / 3); i++) {

   if ((mod == 0) && (i == 0))
    output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
   else
    output += ‘,’ + number.substring(mod + 3 * i, mod + 3 * i + 3);
  }
  return (output);
 }
 else return number;
}

//—————————————————————————
// 表现形式增加逗号,这个可作为单独使用。
// Creation date: (2003-09-12) 
// @author: ecc-wangdong,handong
// @version: 1.0
// @param:number
// @param说明:
//              需转换数值 
//—————————————————————————
function displayComma(str) {

 str = ” + str;
 if ((str.indexOf(“.”))!= -1){

  str1 = str.substring(0,str.indexOf(“.”));
  str2 = str.substring(str.indexOf(“.”));
 }else{

  str1 = str;
 }
 if (str1.length > 3) {

  var mod = str1.length % 3;
  var output = (mod > 0 ? (str1.substring(0,mod)) : ”);
  for (i=0 ; i < Math.floor(str1.length / 3); i++) {

   if ((mod == 0) && (i == 0))
    output += str1.substring(mod+ 3 * i, mod + 3 * i + 3);
   else
    output += ‘,’ + str1.substring(mod + 3 * i, mod + 3 * i + 3);
  }
  if ((str.indexOf(“.”))!= -1){

   output = output + str2;
  }
  return (output);
 }
 else return str;
}

//———————————————————-
// 生成Excel文件并保存
// 输入参数:
// formName:要生成的数据所在的form名称
// tableName:要生成的数据所在的table名称
//———————————————————-
function exportexcel(formName,tableName){

       var oXL = new ActiveXObject(“Excel.Application”);
       oXL.Visible = true;
       var oWB = oXL.Workbooks.Add();
       var oSheet = oWB.ActiveSheet;
     
       var div1=document.all.item(formName);
       var table1=div1.all.item(tableName);
       var table=new Array();

 var retArr = getTableRowsCols(table1);
       var rlen=retArr[0];
       var clen=retArr[1];
 
       var flagTable=new Array(rlen);
       for(var i=0;i<rlen;i++){

        flagTable[i]=new Array(clen);
        for(var j=0;j<clen;j++){

         flagTable[i][j]=0;
        }
       }

 var rowBegin=1, colBegin=1;  //导出的表格的起始位置
 
       var c1=oSheet.Cells(rowBegin,colBegin);
       var c2=oSheet.Cells(rlen+rowBegin-1,clen+colBegin-1);
       oSheet.Range(c1,c2).VerticalAlignment = -4108;
       oSheet.Range(c1,c2).HorizontalAlignment =  -4108;
       
   exportTable(oSheet, flagTable, table1, rowBegin, colBegin);     
            
        oSheet.Range(oSheet.Cells(rowBegin,colBegin),oSheet.Cells(rlen+rowBegin-1,clen+colBegin-1)).EntireColumn.AutoFit();
       oXL.UserControl = true;
       oXL.Quit();
}

//返回当前表格的行数和列数
//参数:objTable, 表格对象
//返回:retArr, retArr[0], 行数;retArr[1], 列数
function getTableRowsCols(objTable)
{

 var rowCnt=0, colCnt=0;
 for (var i=0; i<objTable.rows.length; i++) {

  var row = objTable.rows[i]; //当前行
  var rowRows=1, rowCols=0; //当前行的初始行数和列数
  for (var j=0; j<row.cells.length; j++) {

   var cell = row.cells[j]; //当前单元格
   if (cell.firstChild !=null && cell.firstChild.tagName == “TABLE”) {

    var inRetArr = getTableRowsCols(cell.firstChild);
    rowCols +=inRetArr [1];
    rowRows = rowRows<inRetArr[0] ? inRetArr[0] : rowRows;
   } else { //不是表格
    rowCols += parseInt(cell.colSpan);
    rowRows = rowRows<parseInt(cell.rowSpan) ? parseInt(cell.rowSpan) : rowRows;
   }
  }
  colCnt = colCnt<rowCols ? rowCols : colCnt;
  rowCnt += rowRows;
 }
 var retArr = new Array();
 retArr[0] = rowCnt;
 retArr[1] = colCnt;
 
 return retArr;
}

//导出表格
function exportTable(oSheet, flagTable, objTable, rowBegin, colBegin){

 var flagRow=0, flagCol=0;  //跟踪当前的表示表中的相对位置
 for(var i=0; i<objTable.rows.length; i++) {

  var row = objTable.rows[i]; //当前行
  flagCol = 0;
  var subTableRows = 1;  //当前行若有表格,则记录其中最大的行数
  for (var j=0; j<row.cells.length; j++) {

   while (flagTable[rowBegin-1+flagRow][colBegin-1+flagCol]==1) {

    flagCol++;
   }
   var cell=row.cells[j]; //当前单元格
   if (cell.firstChild !=null && cell.firstChild.tagName == “TABLE”) {

    var retArrRows = getTableRowsCols(cell.firstChild)[0];
    subTableRows = subTableRows<retArrRows ? retArrRows : subTableRows;
    exportTable(oSheet, flagTable, cell.firstChild, rowBegin+flagRow, colBegin+flagCol);
   } else {

    
    oSheet.Cells(rowBegin+flagRow, colBegin+flagCol).Font.Bold=1;
                      
    var rs=parseInt(cell.rowSpan);
                   var cs=parseInt(cell.colSpan);
                   oSheet.Cells(rowBegin+flagRow, colBegin+flagCol).NumberFormatLocal=”@”;
                   oSheet.Cells(rowBegin+flagRow, colBegin+flagCol).Value = cell.innerText;
                   oSheet.Range(oSheet.Cells(rowBegin+flagRow, colBegin+flagCol),oSheet.Cells(rowBegin+flagRow+rs-1,colBegin+flagCol+cs-1)).MergeCells = 1; 
    
    //填写当前单元格在标志表格中的标志
    for(var k=0; k<rs; k++) {

     for(var l=0; l<cs; l++) {

      flagTable[rowBegin-1+flagRow+k][colBegin-1+flagCol+l]=1;
     }
    }
   }
    
   flagCol =flagCol + cs – 1; //加速标志表格的列的移动,因为当前表格已经标识了cs个标志单元                     
  }
  flagRow += subTableRows;
 } 
}

//———————————————————-
// 图片控制函数
//———————————————————-
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf(“#”)!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf(“?”))>0&&parent.frames.length) {

    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

//—————————–
// 检查时间间隔是否在规定间隔之内
// 输入:
// startDate/endDate为YYYYMMDD型日期字符串
// interval:间隔,单位为天
// 返回:true 符合要求
// false 不符合要求
//—————————–
function dateInterval(startDate,endDate,interval) {

 var date1 = new Date(eval(startDate.substring(0,4)),eval(startDate.substring(4,6))-1,eval(startDate.substring(6,8)));
 var date2 = new Date(eval(endDate.substring(0,4)),eval(endDate.substring(4,6))-1,eval(endDate.substring(6,8)));
 if ( ( date2 – date1 ) / 86400000 > eval(interval) – 1 )
  return false;
 return true;
}

//—————————–
// 返回对话框中的文件路径
//—————————–
function getFilePath(filespec)
{

 oldSpec=filespec;
 index=filespec.indexOf(“//”);
 while(index>=0)
    {

     if(filespec.length>index)
  filespec=filespec.substring(index+1);
  index=filespec.indexOf(“//”);
 }
 index=filespec.indexOf(“/”);
 while(index>=0)
    {

  if(filespec.length>index)
  filespec=filespec.substring(index+1);
  index=filespec.indexOf(“/”);
 }
 index=oldSpec.indexOf(filespec);
 return oldSpec.substring(0,index);
}

var debug = 0;
/**
*   发送xml请求
*   url: url
*   method: Post or Get
*   retType: xml or html
**/
function sendXMLHttpRquest(url, method, retType)
{

 var objHTTP = new ActiveXObject(“Microsoft.XMLHTTP”);
 objHTTP.Open(method, url, false);
 objHTTP.Send();
 var resText = objHTTP.responseText;
 objHTTP = null;
 if (debug > 0)
 {

  if (debug > 4)
   document.write(resText);
  else
   alert(resText);
 }
 if (retType == “html”)
  return resText;

 if(resText.toLowerCase().indexOf(“<html>”)!=-1)
 {

  document.write(resText);
  document.write(“<script>window.reload;</script>”);
  return null;
 }
 return resText;
}
/**
*   发送xml请求
*   url: url
*   method: Post or Get
*   retType: xml or html
**/
function sendXMLHttpRquestNoWait(url, method, retType)
{

 var objHTTP = new ActiveXObject(“Microsoft.XMLHTTP”);
 objHTTP.Open(method, url, true);
 objHTTP.Send();
 var resText = objHTTP.responseText;
 objHTTP = null;
 if (debug > 0)
 {

  if (debug > 4)
   document.write(resText);
  else
   alert(resText);
 }
 if (retType == “html”)
  return resText;

 if(resText.toLowerCase().indexOf(“<html>”)!=-1)
 {

  document.write(resText);
  document.write(“<script>window.reload;</script>”);
  return null;
 }
 return resText;
}
/**
*   获取xml中指定数据域的数据
*   xml:xml
*   name:String
*/
function getValueFromXML(xml, name)
{

 var value = null;
 var tmp_xml = xml;
 var tmp_name = name;
 var k = null;
 try {

  while((k = tmp_name.indexOf(“.”)) != -1)
  {

   var name_tmp = tmp_name.substring(0,k);
   tmp_name = tmp_name.substring(k+1);
   var i_tmp = tmp_xml.indexOf(“<“+name_tmp+”>”);
   var j_tmp = tmp_xml.indexOf(“</”+name_tmp+”>”);
   tmp_xml = tmp_xml.substring(i_tmp+name_tmp.length+2,j_tmp);
  }
  var i = tmp_xml.indexOf(“<“+tmp_name+”>”);
  var j = tmp_xml.indexOf(“</”+tmp_name+”>”);
  value = trim(tmp_xml.substring(i+tmp_name.length+2,j));
  if(value!=null && value.indexOf(“![CDATA”) != -1)
  {

   value = trim(value.substring(value.lastIndexOf(“[“)+1,value.indexOf(“]”)));
  }
 } catch(Exception)
 {

  value = null;
 }
 return value;
}

function isExRate(rate)
{

 if (rate == “”)
  return false;
 for (var j = 0; j < rate.length; j++) {

  if (isNaN(parseInt(rate.charAt(j), 10)) && rate.charAt(j) != “.”) {

   return false;
  }
 }
 if(rate.indexOf(“.”)!=rate.lastIndexOf(“.”) || rate.lastIndexOf(“.”)==rate.length-1){

  return false;
 }
 if(rate.indexOf(“.”)!=-1 && rate.substring(rate.indexOf(“.”)+1).length>4)//小数点后面只能有四位
 {

  return false;
 }
 if((rate * 1 <=0)||(rate * 1 >= 100000))    //汇率必须大于0 汇率必须小于100000.
  return false;
 if (rate.charAt(0)==”0″ )
 {        
    if (!(rate.charAt(1)==”.”))
    {    
    return false;
  }      
 }
 return true;
}
/**
*   判断美元-日元挂盘汇率输入是否合法
**/
function isLegalUSDJPYExRate(rate)
{

 if(!isExRate(rate))
  return false;
 if(rate.indexOf(“.”)!=-1 && rate.substring(rate.indexOf(“.”)+1).length>2)//小数点后面只能有2位
 {

  return false;
 }
 return true;

}

//判断数值,是否为浮点数
function MycheckFloat(str) {
 var length1 , i , j;
 var string1=””;
  
 
    str = javaTrim(str);
    string1=str;
 length1 = string1.length;
 if (length1 == 0)
 {

  alert( “错误!空串!”);
  return(false);
 }
   if (str.charAt(0)==”0″ )
   {

       if (length1 == 1)
       {

         alert(“金额不能为0,请重新填写!”);
         return(false);
        }
       else
       {

        if (!(str.charAt(1)==”.”))
        {

          alert(“金额首位不能为0,请重新填写!”);
          return(false);
      }
  }
    }
    if(str.charAt(0)==”.”)
    return false;
 j=0;
 for (i = 0 ; i < length1 ; i++) {  //判断每位数字
  if(isNaN(parseInt(str.charAt(i),10)))  {

   if(str.charAt(i) != “.”)  {

    //alert( “错误!请输入数值型数据!”);     
    return(false);
   } else  {j++;
   if(length1 – i > 3 ){

   //alert(“小数点后只能有两位!”);
    return(false);}
     }
   }  
 }
 if(j > 1) {

  //alert( “错误!小数点只能有一个!”);   
  return(false);
 }

 return (true);
}
//判断数值,是否为浮点数
function checkFloat(string) {
 var length1 , i , j;
 var string1=””;
  
 
    string1 = javaTrim(string)
 length1 = string1.length;
 if (length1 == 0)
 {

  alert( “错误!空串!”);
  return(false);
 }
       if (string.charAt(0)==”0″ )
       {if (length1 == 1){

         alert(“金额不能为0,请重新填写!”);
         return(false);
       }
       else{

       if (!(string.charAt(1)==”.”)){

         alert(“金额首位不能为0,请重新填写!”);
         return(false);}
  }
       }
 j=0;
 for (i = 0 ; i < length1 ; i++) {  //判断每位数字
  if(isNaN(parseInt(string.charAt(i),10)))  {

   if(string.charAt(i) != “.”)  {

    alert( “错误!请输入数值型数据!”);     
    return(false);
   } else  {j++;
   if(length1 – i > 3 ){

   alert(“小数点后只能有两位!”);
    return(false);}
     }
   }  
 }
 if(j > 1) {

  alert( “错误!小数点只能有一个!”);   
  return(false);
 }

 return (true);
}
//**************去掉字符串前后的空格************
function javaTrim(string){

 var length1, i, j;
 var string1 = “”;
 
 length1 = string.length;
 for (i = 0 ; i < length1 ; i++) {

  if(string.charAt(i) != ” “) {

   for (j = i ; j < length1 ; j++)
    string1 = string1 + string.charAt(j);
    break;
  }
 } 
 length1 = string1.length;
 string = string1;
 string1 = “”;
 for (i = length1 – 1 ; i >= 0 ; i–) {

  if(string.charAt(i) != ” “) {

   for (j = 0 ; j <= i ; j++)
    string1 = string1 + string.charAt(j);
    break; 
  }
 }
 string = string1; 
 return(string) 
}

//**************转换大写金额************
var aNum = new Array(10);
aNum[0] = “%u96F6”;  //零
aNum[1] = “%u58F9”;  //壹
aNum[2] = “%u8d30”;  //贰
aNum[3] = “%u53c1”;  //叁
aNum[4] = “%u8086”;  //肆
aNum[5] = “%u4F0D”;  //伍
aNum[6] = “%u9646”;  //陆
aNum[7] = “%u67D2”;  //柒
aNum[8] = “%u634C”;  //捌
aNum[9] = “%u7396”;  //玖

var HUNDREDMILLION = 0
var TENTHOUSAND = 1;
var THOUSAND = 2;
var HUNDRED = 3;
var TEN = 4;
var YUAN = 5;
var JIAO = 6;
var CENT = 7;
var ZHENG = 8;
var aUnit = new Array(9);
aUnit[HUNDREDMILLION] = “%u4EBF”; //亿
aUnit[TENTHOUSAND] = “%u4E07”;  //万
aUnit[THOUSAND] = “%u4EDF”;   //仟
aUnit[HUNDRED] = “%u4F70”;   //佰
aUnit[TEN] = “%u62FE”;    //拾
aUnit[YUAN] = “%u5143”;    //元
aUnit[JIAO] = “%u89D2”;    //角
aUnit[CENT] = “%u5206”;    //分
aUnit[ZHENG] = “%u6574”;   //整

 

function toChineseCash( cash )
{

 var integerCash=””;
 var decimalCash=””; 
 var integerCNCash = “”;
 var decimalCNCash = “”
 var dotIndex = 0;
 var cnCash = “”;
 var Cash = “”;
 
 Cash = javaTrim( cash );
 if( Cash == null || Cash.length == 0 )
  return cnCash;
  
 if( !checkFloat( Cash ) )
  return cnCash; 
   
 dotIndex = Cash.indexOf(‘.’);
 if( dotIndex != -1 ) {

  integerCash = Cash.substring( 0, dotIndex );
  decimalCash = Cash.substring( dotIndex + 1 ); 
 }else {

  integerCash = Cash;
  decimalCash = null;
 }
 
 integerCNCash = filterCharacter( integerCash, ‘0’ );
 if( integerCNCash == null )
  integerCNCash = “”;
 else
  integerCNCash = convertIntegerToChineseCash( integerCNCash );
 
 decimalCNCash = convertDecimalToChineseCash( decimalCash, false );
 
 if( decimalCNCash == null || decimalCNCash.length == 0 ){

  if( integerCNCash == null || integerCNCash.length == 0 )
   cnCash = aNum[0] + aUnit[YUAN] + aUnit[ZHENG]; //”零元整”
  else
   cnCash = integerCNCash + aUnit[YUAN] + aUnit[ZHENG]; //”元整”
 }else {

  if( integerCNCash == null || integerCNCash.length == 0 )
   cnCash = decimalCNCash;
  else
   cnCash = integerCNCash + aUnit[YUAN] + decimalCNCash;  //”元”
 }
 return unescape(cnCash); 
}

function filterCharacter( filterString, filterChar )
{

 if( filterString == null || filterString.length == 0 )
 {

  return null;
 }
 
 var i = 0; 
 for( ; i < filterString.length; i++ )
 {

  if( filterString.charAt( i ) != filterChar )
   break;
 }
 
 var ret = filterString.substring( i, filterString.length );
 ret = (ret.length > 0) ? ret : null;
 
 return ret; 
}

function convertIntegerToChineseCash( cash )
{

 var tempCash = “”;
 var returnCash = “”;
 
 if( cash == null || cash.length == 0 )
  return null;
 
 var totalLen = cash.length;
 var times = ((cash.length % 4) > 0) ? ( Math.floor(cash.length/4) + 1 ) : Math.floor(cash.length/4); 
 var remainder = cash.length % 4;
 var i = 0; 
 for( ; i < times; i++ )
 {

  if( i == 0 && (remainder > 0) ) {

   tempCash = cash.substring( 0, remainder );
  }else {

   if( remainder > 0 )
    tempCash = cash.substring( remainder+(i-1)*4, remainder+i*4 );
   else
    tempCash = cash.substring( i*4, i*4+4 );
  }
  
  tempCash = convert4ToChinese( tempCash, false );
  returnCash += tempCash;
  if( tempCash != null && tempCash.length != 0 )
   returnCash += getUnit( times – i );
 }
  
 return returnCash;
}

function convert4ToChinese( cash, bOmitBeginZero )
{

 var i = 0;
 var length = cash.length;
 var bBeginZero = false;
 var bMetZero = false;
 var returnCash = “”; 
 
 for( ; i < length; i++ )
 {

  if( i == 0 && bOmitBeginZero && cash.charAt(i) == ‘0’ )
  {

   bBeginZero = true;
   continue;
  }
  if( bBeginZero && cash.charAt(i) == ‘0’ )
   continue;
    
  if( cash.charAt(i) != ‘0’ ) {

   if( bMetZero )
    returnCash += aNum[0]; //”零”
   bMetZero = false;
   returnCash += convert( cash.charAt(i) );
   switch( i + (4-length) )
   {

   case 0:
    returnCash += aUnit[THOUSAND]; //”千”
    break;
   case 1:
    returnCash += aUnit[HUNDRED]; //”佰”
    break;
   case 2:
    returnCash += aUnit[TEN]; //”拾”
    break;
   case 3:
    returnCash += “”;
    break;
   default:
    break;    
   }
  }else {

   bMetZero = true;
  }
 }
 
 return returnCash;
}

function getUnit( part )
{

 var returnUnit = “”;
 var i = 0;
 
 switch( part )
 {

 case 1:
  returnUnit = “”;
  break;
 case 2:
  returnUnit = aUnit[TENTHOUSAND]; // “万”
  break;
 case 3:
  returnUnit = aUnit[HUNDREDMILLION]; //”亿”
  break;
 default:
  if( part > 3 )
  {

   for( ; i < part – 3; i++ )
   {

    returnUnit += aUnit[TENTHOUSAND]; // “万”
   }
   returnUnit += aUnit[HUNDREDMILLION]; //”亿”
  }
   
  break;
 }
 
 return returnUnit;
}

function convert( num )
{

 return aNum[parseInt(num)];
}

function convertDecimalToChineseCash( cash, bOmitBeginZero )
{

 var i = 0;
 var bBeginZero = false;
 var bMetZero = false;
 var returnCash = “”;
 
 if( cash == null || cash.length == 0 )
  return returnCash;
  
 
 for( ; i < cash.length; i++ )
 {

  if( i >= 2 )
   break;
  if( i == 0 && bOmitBeginZero && cash.charAt(i) == ‘0’ )
  {

   bBeginZero = true;
   continue;
  }
  if( bBeginZero && cash.charAt(i) == ‘0’ )
   continue;
    
  if( cash.charAt(i) != ‘0’ ) {

   if( bMetZero )
    returnCash += aNum[0]; //”零”
   bMetZero = false;
   returnCash += convert( cash.charAt(i) );
   switch( i )
   {

   case 0:
    returnCash += aUnit[JIAO]; //”角”
    break;
   case 1:
    returnCash += aUnit[CENT]; //”分”
    break;
   default:
    break;    
   }
  }else {

   bMetZero = true;
  }
 }
 
 return returnCash; 
}

//add by xushengang //

//去掉 “,”
function getoff_Qfw(cash){

    var len=cash.length;
    var ch=””;
    var newCash=””;
    for (var ii=0;ii<len;ii++){

        ch=cash.charAt(ii);
        if (ch!=”,”){newCash=newCash+ch;}
    }
    return newCash;
}

//加上”,”
function add_Qfw(cash)
{

    var len=cash.length;
    var cashNew=””;//加上”,”的字符串
    var tt=0;//计数器,每加一个”,” tt 加 1
    var t=0;//添加”,”的个数
    if(intLen>3)
     {

      t=(intLen-intLen%3)/3;
     }
    else
     return cash;
   
    //个数部分长度不是3的倍数
    if(intLen%3 !=0)
    {

     for (var ii=0;ii<len;ii++)
     {

        cashNew=cashNew+cash.charAt(ii);
         if (ii== (intLen%3+3*tt-1) &&  tt<t)
         {

          tt=tt+1;
          cashNew=cashNew+”,”;
         }
     }
 }
 //个数部分长度是3的倍数
 else
 {

  tt=tt+1;
     for (var ii=0;ii<len;ii++)
     {

        cashNew=cashNew+cash.charAt(ii);
         if (ii== (3*tt-1) &&  tt<t)
         {

          tt=tt+1;
          cashNew=cashNew+”,”;
         }
     } 
 
 }
    return cashNew;
}

/******************************************************
//   *功能描述:把签名控件写入页面中
//   *参数说明:
//   *作者:wangtq
//   *创建日期:2004-11-13
***************************************************** */
 
function writeSignActivxObject(basepath)
{  document.write(‘<div id=”infosign” style=”display:none”>’);
 document.write(‘<OBJECT id=InfoSecNetSign1 style=”WIDTH: 0px; HEIGHT: 0px” codeBase=’+basepath+’cab/NetSign.cab#version=1,8,23,5 data=DATA:application/x-oleobject;BASE64,xDi5YpBBN0+M8KkrCpHMdwADAABMWQAA/wIAAA== classid=clsid:62B938C4-4190-4F37-8CF0-A92B0A91CC77  VIEWASTEXT width=”864″ height=”29″>’);
 document.write(‘</OBJECT>’);
 document.write(‘</div>’);

}

//根据前端输入日期和间隔天数,得到另一个日期
//输入参数: intervalday(间隔天数) formname(网页表单名) inputname(表单中的输入对象名)
//输出参数: 新的8位日期
function dateOther(intervalday, formname, inputname,otherDate)
{

 var strdate = 20040101;
    if(otherDate==0){

         var Input = eval(“document.” + formname + “.” + inputname);
         strdate = Input.value;
        
    }else{

         strdate = otherDate;
        
    }
   
    var year = parseInt(strdate.substr(0, 4),10);
    var month = parseInt(strdate.substr(4, 2),10)-1;
    var date = parseInt(strdate.substr(6, 2),10);
     dateDate = new Date(year,month,date);
 for (var i = 0; i < Math.abs(intervalday); i++)
 {

  if (parseInt(intervalday)>=0)
   dateDate.setTime(dateDate.getTime()+1000*60*60*24);
  else
   dateDate.setTime(dateDate.getTime()-1000*60*60*24);
 }
 var strYear = dateDate.getFullYear();
 var strMonth = dateDate.getMonth()+1;
 var strDate = dateDate.getDate();
 if (strMonth<10)
  strMonth=”0″+strMonth;
 if (strDate<10)
  strDate=”0″+strDate;
 strdate = strYear+””+strMonth+””+strDate;

 //alert(strdate);
 return strdate;

 ===================================================

今天看了下這寫js感覺又學了不少東西.

其中有個JavaTrim(str)方法,是去掉字符串前後空格的.從別的地方看到個感覺更簡單些.

function trim(str){

  if(str==null) return “”;
  if(str.length==0) return “”;
  var i=0,j=str.length-1,c;
  for(;i<str.length;i++){

    c=str.charAt(i);
    if(c!=’ ‘) break;
  }
  alert(“i=”+i);
  for(;j>-1;j–){

    c=str.charAt(j);
    if(c!=’ ‘) break;
  }
  if(i>j) return “”;
  alert(“j=”+j);
  return str.substring(i,j+1);
}

今天的文章Liana 3.0 系统JS公用函数库分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/61250.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注