
String.prototype.trim=function(){
        return this.replace(/(^\s*)|(\s*$)/g, "");
}

//字符串添加全部替换处理函数
String.prototype.replaceAll  = function(s1,s2){
  return this.replace(new RegExp(s1,"gm"),s2);
}
//获得字符串的长度（如果汉字、全角字符，则算2）
function getStrLen(value){
var str,Num = 0;
 for (var i=0;i<value.length;i++){
  str = value.substring(i,i+1);
  if (str<="~")  //判断是否双字节
   Num+=1;
  else
   Num+=2;
 }
 return Num;
}

//校验是否为英文
function checkchar()
{
  var Letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  for (i=0; i < document.form.aaa.value.length; i++)
  {
   var CheckChar = document.form.aaa.value.charAt(i);
   CheckChar = CheckChar.toUpperCase();
   if (Letters.indexOf(CheckChar) == -1)
   {
    alert ("输入类型必须为英文！");
    return false;
   }
  }
}

//校验是否为数字

function checknum(p) {
  if (p == "") {
    alert ("输入不能为空！");
    return false;
  }

  var l = p.length;
  var count=0;
  for(var i=0; i<l; i++) {
    var digit = p.charAt(i);
    if(digit == "." ) {
      ++count;
      if(count>1) {
        alert ("输入类型必须为数字！");
        return false;
      }
    } else if(digit < "0" || digit > "9")   {
      alert ("输入类型必须为数字！");
      return false;
    }
  }
  return true;
}

//校验IP地址格式
function checkip() {
  var scount=0;
  var ip = document.form3.ccc.value;
  var iplength = ip.length;
  var Letters = "1234567890.";
  for (i=0; i < document.form3.ccc.value.length; i++) {
    var CheckChar = document.form3.ccc.value.charAt(i);
    if (Letters.indexOf(CheckChar) == -1) {
      alert ("IP地址格式不对!!，只能输入数字和“.”,格式为XXX.XXX.XXX.XXX 例如：192.168.0.1");
      document.form3.ccc.value="";
      document.form3.ccc.focus();
      return false;
    }
  }

  for (var i = 0;i<iplength;i++) {
    ip.substr(i,1)=="."?scount++:scount;
    if(scount!=3) {
      alert ("IP地址格式不对!，只能输入数字和“.”,格式为XXX.XXX.XXX.XXX 例如：192.168.0.1");
      document.form3.ccc.value="";
      document.form3.ccc.focus();
      return false;
    }
  }

  first = ip.indexOf(".");
  last = ip.lastIndexOf(".");
  str1 = ip.substring(0,first);
  subip = ip.substring(0,last);
  sublength = subip.length;
  second = subip.lastIndexOf(".");
  str2 = subip.substring(first+1,second);
  str3 = subip.substring(second+1,sublength);
  str4 = ip.substring(last+1,iplength);

  if (str1=="" || str2=="" ||str3== "" ||str4 == "") {
    alert("数字不能为空！格式为XXX.XXX.XXX.XXX 例如：192.168.0.1");
    document.form3.ccc.value="";
    document.form3.ccc.focus();
    return false;
  }
  if (str1< 0 || str1 >255) {
    alert ("数字范围为0~255！");
    document.form3.ccc.value="";
    document.form3.ccc.focus();
    return false;
  } else if (str2< 0 || str2 >255) {
    alert ("数字范围为0~255！");
    document.form3.ccc.value="";
    document.form3.ccc.focus();
    return false;
  } else if (str3< 0 || str3 >255) {
    alert ("数字范围为0~255！");
    document.form3.ccc.value="";
    document.form3.ccc.focus();
    return false;
  } else if (str4< 0 || str4 >255) {
    alert ("数字范围为0~255！");
    document.form3.ccc.value="";
    document.form3.ccc.focus();
    return false;
  }
}

//校验电话号码
function checkphone() {
  var Letters = "1234567890,";
  for (i=0; i < document.form4.ddd.value.length; i++)   {
   var CheckChar = document.form4.ddd.value.charAt(i);
   if (Letters.indexOf(CheckChar) == -1) {
    alert ("电话号码只能为数字或逗号！");
    return false;
   }
  }
}

//获得当前界面里的对象
function getElement(name) {
  if(document.getElementsByName(name).item.length>0) {
    return document.getElementsByName(name).item(0) ;
  } else {
    return null ;
  }
}

var calculateToObj ;
var calculateData = function(data){
  try {
    if (data != null && typeof data == 'object'){ } else {
      var rt=DWRUtil.toDescriptiveString(data, 1);
      calculateToObj.value = rt ;
      return rt ;
    }
  } catch(e) {
    //
  }
}

/**
 * 计算表达式的值
 * text:  表达式
 * dot:   要保留的小数位数
 */
function calculate(text , dot , toObj) {
  calculateToObj = toObj ;
  commonMath.calculate(text , dot , calculateData) ;
}
/**
 * 转换表格负值颜色
 * table1id : 表id
 * colIndex : 指定列(空值为全部)
 * color    : 指定颜色(空值为红色)
 */
 function settablecellcolor(table1id,colIndex,color){
    var tabobj = document.getElementById(table1id);
    var rowlen = tabobj.rows.length;
    var newRowobj = tabobj.rows(1) ;
    var colLen = newRowobj.cells.length ;
    var cellValue ="";
    if(color==""||color.length==0){color="red";}

   try{
     for (var i = 1;i< rowlen;i++){
        newRowobj = tabobj.rows(i) ;
        //如果指定列为空，则检查表所有的列
        if(colIndex==""||colIndex.length==0){
          for(var j = 0;j<colLen;j++){
            cellValue  = newRowobj.cells[j].innerHTML;
            if(cellValue.indexOf("-")==0 ){
               newRowobj.cells[j].style.color=color
               cellValue = newRowobj.cells[j].innerHTML=cellValue.substring(cellValue.indexOf("-")+1);
            }
          }
        }else{
           cellValue  = newRowobj.cells[colIndex - 1].innerHTML;
           if(cellValue.indexOf("-")==0 ){
              newRowobj.cells[colIndex - 1].style.color=color
              cellValue = newRowobj.cells[colIndex  - 1].innerHTML=cellValue.substring(cellValue.indexOf("-")+1);
           }
        }
     }
  } catch(exception){
   //表格字体颜色处理出错
  }
}

//获得任意对象的绝对坐标位置，返回值为数组：rec[0]:X轴位置；rec[1]:Y轴位置
function getObjPosition(e) {
 var t=e.offsetTop;
 var l=e.offsetLeft;
 while(e=e.offsetParent) {
  t+=e.offsetTop;
  l+=e.offsetLeft;
 }
 var rec = new Array(1);
 rec[0]  = l ;
 rec[1] = t ;
 return rec
}

//导出成Excel
function exportReportToExcel(theExportObjTable) {
  try {
    var oXL    = new ActiveXObject ( "Excel.Application" );
    // new book
    var oWB = oXL.Workbooks.Add();
    var oSheet = oWB.ActiveSheet;

    //===========================
    //   表格数据
    //===========================
    for(i = 1 ; i<=theExportObjTable.rows(0).cells.length ; i++) {
      for(j = 1 ; j<=theExportObjTable.rows.length ; j++) {
        oSheet.Cells(j , i ).WrapText = true ;
        oSheet.Cells(j , i ).Font.Size = 9 ;
        oSheet.Cells(j , i ).Borders.LineStyle=1 ;
        oSheet.Cells(j , i ).value = theExportObjTable.rows(j-1).cells(i-1).innerText ;
      }
    }

    oXL.Visible = true;
    oXL.UserControl = true;
  } catch(e) {
    alert( "***** 错误提示：您的电脑没有安装Excel软件；或者你的浏览器“ActiveX 控件”被禁用;请在浏览器的【安全设置】中启用“ActiveX控件和插件”! ");
    return "";
  }
}

