//四舍五入
Number.prototype.toFixed=function(len)
{
    var add = 0;
    var s,temp;
    var s1 = this + "";
    var start = s1.indexOf(".");
    if(s1.substr(start+len+1,1)>=5) add = 1;
    var temp = Math.pow(10,len);
    s = Math.floor(this * temp) + add;
    return s/temp;
}

//除去字符串前后的空格
String.prototype.Trim = function(){
   return this.replace(/(^\s*)|(\s*$)/g, "");
}
//限制键盘输入，只能输入整数
function input1(){
  if(event.keyCode==34||event.keyCode==39) event.returnValue=false;
  if(event.keyCode<45||event.keyCode>57) event.returnValue=false;

}
//限制键盘输入，只能输入大于零的整数
function input(){
  if(event.keyCode<48||event.keyCode>57) event.returnValue=false;
}

//只能输入英文字母、数字和 ‘_’ (下划线)
function isNAL(name){
  if(/[^\w]|[\s]/g.test(name)){
    return true;
  }
  return false;
}

//只能输入英文字母、数字和 ‘_’ (下划线)！
function judgeeName(inform,info){
  val = inform.value;
  if(val != "" && /[^\w]|[\s]/g.test(val)){
    window.alert(info + "由a-z(不区分大小写)0-9组成！");
    inform.value=inform.value.replace(/[^\w]|[\s]/g,'');
    inform.focus();
  }
}
//只能输入汉字
function isChChar(name){
  if(/[^\u4E00-\u9FA5]/g.test(name)){
    return false
  }
  return true;
}

//效验输入数值的位数
function isTooLen(inform,info,bit){
  var val = inform.value.Trim();
  if((val.indexOf(".") == -1 && val.length > bit)||
     (val.indexOf(".") != -1 && val.substr(0,val.indexOf(".")).length > bit)) {
      window.alert(info + "整数位不能超过" + bit + "位！");
      inform.select();
  }
}

//效验输入数值的位数(可用逗号隔开)
function isTooLen2(inform,info,bit){
  var val = inform.value;
  val = (val + "").Trim().replace(/[\,]/g,'');
  if((val.indexOf(".") == -1 && val.length > bit)||
     (val.indexOf(".") != -1 && val.substr(0,val.indexOf(".")).length > bit)) {
      window.alert(info + "整数位不能超过" + bit + "位！");
      inform.select();
  }
}

//限制输入的数据只能为大于零的整数
function isNum(inform,info){
  val = inform.value.Trim();
  if(val != "" && (/[^0-9]/g.test(val) || Number(val)==0)){
    window.alert(info + "只能输入大于零的整数！");
    //inform.value=inform.value.replace(/[^0-9]/g,'');
    inform.select();
  }
}

//限制输入的数据只能为数字字符
function isNumChar(inform,info){
  val = inform.value.Trim();
  if(val != "" && (/[^0-9]/g.test(val))){
    window.alert(info + "只能输入数字字符！");
    inform.value=inform.value.replace(/[^0-9]/g,'');
    inform.focus();
  }
}

//限制输入的数据只能为大于或等于零的整数
function isNumLing(inform,info){
  if(inform.value.Trim() != "" &&
     (/[^0-9]/g.test(inform.value))){
    window.alert(info + "只能输入大于或等于零的整数！");
    inform.value=inform.value.replace(/[^0-9]/g,'');
    inform.focus();
  }
}

//限制只能为大于或等于零的数值
function isNumValue(inform,info){
  if(inform.value.Trim() != "" && (isNaN(inform.value) || Number(inform.value) < 0)){
    window.alert(info + "只能为大于或等于零的数值！");
    inform.value=inform.value.replace(/[^0-9.]|[\-]/g,'');
    inform.focus();
  }
}

//限制只能为大于或等于零的数值(可用逗号隔开)
function isNumValue2(inform,info){
  val = (inform.value.Trim()).replace(/[\,]/g,'');
  if(val != "" && (isNaN(val) || Number(val) < 0)){
    window.alert(info + "只能为大于或等于零的数值！");
    inform.value=inform.value.Trim().replace(/[^0-9.]|[\-]/g,'');
    inform.focus();
  }
}
//限制只能为大于或等于零的数值包括小数
function isNumValue3(inform,info){
  if(inform.value.Trim() != "" && (isNaN(inform.value) || parseFloat(inform.value) < 0)){
    window.alert(info + "只能为大于或等于零的数值！");
    inform.value=inform.value.replace(/[^0-9.]/g,'');
    inform.focus();
  }
}
//限制只能为数值
function isNum2(inform,info){
  if(inform.value.Trim() != "" && (isNaN(inform.value))){
    window.alert(info + "只能为数值！");
    inform.value=inform.value.replace(/[^0-9.-]/g,'');
    inform.focus();
  }
}

//限制输入的数据只能为大于零的数
function isBiggerZero(inform,info){
  val = inform.value.Trim();
  if(val != "" && (isNaN(val) || Number(val)==0 || Number(val) < 0)){
    window.alert(info + "只能输入大于零的数！");
    inform.value=inform.value.replace(/[^0-9.]|[\-]/g,'');
    inform.focus();
    if(Number(val)==0) inform.value="";
  }
}

//限制输入的数据只能为大于零的数(可用逗号隔开)
function isBiggerZero2(inform,info){
  val = (inform.value.Trim()).replace(/[\,]/g,'');
  if(val != "" && (isNaN(val) || Number(val)==0 || Number(val) < 0)){
    window.alert(info + "只能输入大于零的数！");
    //inform.value=inform.value.replace(/[^0-9.]|[\-]/g,'');
    inform.value = "";
    inform.focus();
  }
}

//效验表单的必须输入项
function checkInput(value,info) {
  if(value == "") {
    return info + "不能为空！";
  }
  return "";
}

//效验表单的必须选择项
function checkChoice(value,info) {
  if(value == "") {
    return "请选择"+ info + "！";
  }
  return "";
}
//改变鼠标的形状和event的状态
function change_cursor(){
  window.event.srcElement.style.cursor="hand";
  window.event.srcElement.style.color="#FA9893" ;
  window.event.srcElement.style.textDecorationUnderline=true;
}
//改变鼠标的形状和event的状态
function change_cursor_back(){
  window.event.srcElement.style.color="" ;
  window.event.srcElement.style.textDecorationUnderline=false;
}

//电话号码的输入效验
function isPhoneNumber(str){
  var checkOK = "0123456789-,()";
  var checkStr = str;
  var allValid = true;
  var decPoints = 0;
  var allNum = "";
  var allNum_dec=0;
  for (i = 0;  i < checkStr.length;  i++){
    ch = checkStr.charAt(i);
    for (j = 0;  j < checkOK.length;  j++)
      if (ch == checkOK.charAt(j))
        break;
    if (j == checkOK.length){
      allValid = false;
      break;
    }
    if (ch == "."){
      allNum += ".";
      decPoints++;
    }
    else if (ch != ",")
      allNum += ch;
  }
  return (allValid);
}
//电话号码的输入效验提示
function isPhNumAlert(inform,info){
  val = inform.value;
  if(!isPhoneNumber(val)){
    window.alert(info + "格式错误！");
    inform.value=inform.value.replace(/[^0-9,()-]/g,'');
    inform.focus();
  }
}
//输入的只能为:0-9或a-z或A-Z
function isUserChar(str){
  var checkok = "abcdefghijklmnopqrstwvuxyzABCDEFGHIJKLMNOPQRSTWVUXYZ0123456789";
  var ok = 0;
  for (i = 0;  i < str.length;  i++){
     ch = str.charAt(i);
     for (j = 0;  j < checkok.length;  j++){
        if(ch == checkok.charAt(j)) ok = 1;
     }
     if(ok == 0) return true;
     ok = 0;
  }
}
//只能输入字符
function isChar(inform,info){
  var val=inform.value.Trim();
  if(val !="" && (/[\u4E00-\u9FA5]/g.test(val))){
    window.alert(info + "只能输入字符！");
    inform.value=val.replace(/[\u4E00-\u9FA5]/g,'');
    inform.focus();
  }
}

//取小数点后两位
function checkDecimal(val){
  if(val == "") return val;
  val = (val.toString()).replace(/[\,]/g,'');
  val = Math.round(Number(val) * 100)/100;

  val = val.toString();
  var len = val.indexOf(".");
  if(len != -1 && (val.length-len) > 3){
    val = val.substr(0,val.indexOf(".") + 3);
  }
  val = fullZero(val,2);
  return val
}

//取小数点后bn位
function checkDecimalX(val,bn){
  if(val == "") return val;
  val = (val.toString()).replace(/[\,]/g,'');
  var tempNum = "1";
  for(var i = 0; i < bn; i ++){
    tempNum += "0";
  }
  val = Math.round(Number(val) * Number(tempNum))/Number(tempNum);
  val = val.toString();
  var len = val.indexOf(".");
  if(len != -1 && (val.length-len) > (bn+1)){
    val = val.substr(0,val.indexOf(".") + (bn+1));
  }
  val = fullZero(val,bn);
  return val;
}
//change the cursor where mouse over
function changeCursor(){
    window.event.srcElement.style.cursor="hand";
    window.event.srcElement.style.textDecorationUnderline=true;
}

//check the path validate
function validPath(obj){
  var val = obj.value;
  if(val != "" && val.indexOf(":\\") == -1){
    window.alert("输入文件路径无效！");
    obj.value="";
    obj.select();
  }
}
//获取当前日期:2003-05-12
function getCurrentDate(){
  var vtoday = new Date();
  vday = vtoday.getDate();
  var vday = vday.toString().length==1?"0" + vday : vday;
  var vmonth=vtoday.getMonth()+1;
  vmonth=vmonth.toString().length==1?"0" + vmonth : vmonth;
  var vyear=vtoday.getFullYear();
  vtoday=vyear+"-"+vmonth+"-"+vday;
  return vtoday;
}

//效验时间输入不能大于当前日期
function validateDate(inform,comDate,info1,info2){
  if(inform.value != "" && inform.value < comDate){
    window.alert(info1 + "应该大于" + info2 + "！");
    inform.value = "";
    inform.focus();
  }
}
//在一串数字中每三位加一个逗号，就像1,234,567.01
function formatSum(s){
  s = (s + "").replace(/[\,]/g,'').Trim();
  var index=s.lastIndexOf(".");
  if(index<0) index=s.length;
  for(var i = index; i > 3; i -= 3){
    s = s.substr(0,i-3)+","+s.substr(i-3,s.length);
  }
  return s;
}

//替换所有字符","为chr
String.prototype.replaceChar = function(chr){
   return this.replace(/[\,]/g,chr);
}

//效验E-Mail
function checkEmail(val){
  var pattern = /^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
  if(pattern.test(val)){
    return true;//正确
  } else {
    return false;//错误
  }
}

//改变鼠标形状
function change_cursor(){
  window.event.srcElement.style.cursor="hand";
  //window.event.srcElement.style.textDecorationUnderline=true;
}

//改变鼠标形状(默认)
function change_cursor_back(){
  window.event.srcElement.style.color="" ;
  window.event.srcElement.style.textDecorationUnderline=false;
}

//val的小数点后不够cnt位数时补足零
function fullZero(val,cnt){
  if(cnt <= 0 || val == "") return val;
  var vval = val.toString();
  var blen = vval.indexOf(".");
  if(blen == -1) {
    vval += ".";
    for(var i = 1; i <= cnt; i ++){
      vval += "0";
    }
  } else {
    var alen = (vval.substring(blen+1)).length;
    for(var i = 1; i <= cnt - alen; i ++){
      vval += "0";
    }
  }
  return vval;
}

