//解决传入0 格化后不返回空的问题
function formatAmountValueNew(objValue,flag)
 {
  if(objValue!="" && objValue!=null)
  { 
   if(flag==0)
   {
    // 验证输入金额数值或数值字符串:
    return objValue.toString().replace(/,/g, "");
   }
   else
   {
    
    return  convertAmount(objValue);
   }
  }
  return '0';
 }
//格式化值,0为格式还原,1为格式操作
function formatAmountValue(objValue,flag)
 {
  if(objValue!="" && objValue!=null)
  { 
   if(flag==0)
   {
      // 验证输入金额数值或数值字符串:
    return objValue.toString().replace(/,/g, "");
   }
   else
   {
    
    return  convertAmount(objValue);
   }
  }
  return "0.00";
 }
 
//进行格式转换
function convertAmount(objValue)
{
 if(objValue!=null)
 {
  //alert("1:"+objValue);
  objValue=objValue.toString();
  var temp = objValue.toString();
  if(objValue!="")
  {
   //alert("2:"+objValue);
   objValue=objValue.replace(/,/g, "");
   if(isNaN(objValue))
   {
    return temp;
   }
   return formatNumData(objValue,2);
//   objValue =parseFloat(objValue).toLocaleString();
//   //解决.13问题
//   if(objValue.indexOf(".")==0)
//   {
//    // 验证输入金额数值或数值字符串:
//    objValue = 0+parseFloat(objValue).toLocaleString();
//   }
//   else if(objValue.indexOf("-")==0&&objValue.indexOf(".")==1)
//   {
//    //当输入-0.5的时候返回-0.50
//    objValue = "-0"+objValue.substring(1);
//   }
//   return objValue;
  }
 }
 return "0.00";
}
 
//数字,自动转换成有千分位的形式 num--数字 , digit 保留小数位   将数字转换成三位逗号分隔的样式  
function formatNumData(num, digit) {
 if (!/^(\+|-)?(\d+)(\.\d+)?$/.test(num)) {
  return "0.00";
 }
 var result=Number(num).toFixed(digit);
 var a = RegExp.$1, b = RegExp.$2, c = RegExp.$3;
 //var re = new RegExp().compile("/(\d{1,3})(?=(\d{3})+(?:$|\.))/g");
 var re=/(\d{1,3})(?=(\d{3})+(?:$|\.))/g;
 
 while (re.test(b)) {
  //b = b.replace(re, "$1,$2$3");
  result = result.replace(re, "$1,");
 }
 
 /*
 if (c && digit && new RegExp("^.(\\d{" + digit + "})(\\d)").test(c)) {
  if (RegExp.$2 > 4) {
   c = (parseFloat(RegExp.$1) + 1) / Math.pow(10, digit);
  } else {
   c = "." + RegExp.$1;
  }
 }
 var result = a + "" + b + "" + (c + "").substr((c + "").indexOf("."));
 if (result.indexOf(".") < 0) {
  result += ".00";
 }
 if(result.substring(result.indexOf("."),result.length-1).length==1){
  result+="0";
 }
 */
 return result;
}

//格式化多行金额
function formatCommonObjs(obj,flag,target)
{
 if(obj!=null)
 {
  //解决单个对象操作的数组问题
  if(typeof(obj.length)=="undefined")
  {
   var newArray=new Array();
   newArray.push(obj);
   obj=newArray;
  }
  for(var i=0;i<obj.length;i++)
  {
   formatCommonObj(obj[i],flag,target);
  }
 }
}
//格式化表头金额
function formatCommonObj(obj,flag,target)
{
 if(obj!=null)
 {
  for(var i=0;i<target.length;i++)
  {
   
   formatSubObj(obj,flag,target[i]);
  }
 }
}
//格式化金额对象,0为格式还原,1为格式操作
function formatSubObj(obj,flag,target)
{
 if(flag==0)
 {
  if(obj[target] != undefined){
   var v = obj[target] + "";
   obj[target] = v.replace(/,/g, "");
  }
 }
 else
 {
  if(obj[target] != undefined){
   obj[target] = convertAmount(obj[target]);
  }
 }
}

/*格式化浮点型数据,转换成整型
tab_id:行表tableID
input_id:要格式化的字段id
td_num:如果要格式化的字段没有id时,取字段的列数
*/
function formatNum(tab_id,input_id,td_num)
{      
    var tab_id = tab_id + "_ssb";
 var obj = document.getElementById(tab_id);    
 for(var i=1;i<obj.rows.length;i++)
 {
  var tr = obj.rows[i];
  if(td_num != null)
  {
   var td_text = tr.cells[td_num].firstChild;
   if(td_text != null)
   {
    var value = td_text.nodeValue;
    if(value.indexOf("."))
    {
     var arr = value.split(".");     
     td_text.nodeValue = arr[0];
    }
   }    
  }
  else if(input_id != null)
  {    
   var input = tr.getElementsByTagName("input");
   for(var j=0;j<input.length;j++)
   {
    var id = input[j].getAttribute("id");
    if(id.indexOf(input_id) > -1)
    {       
     var value = input[j].getAttribute("value");      
     if(value.indexOf(".") > -1)
     {                
      var arr = value.split(".");

input[j].setAttribute("value",arr[0]); 
      
     }
    }
   }
  }
 }
}
/*
**第三步取check_unit
*/
function getCheckUnit()
{
  var checkUnit = document.getElementById('checkUnit').value; 
  
 return checkUnit;
}
//转特别字符
function converSpeChar(str){
     var RexStr = /\<|\>|\"|\'|\&/g ;
       str = str.replace(RexStr,
          function(MatchStr){
              switch(MatchStr){
                  case "<":
                      return "& lt;";
                      break;
                  case ">":
                      return "& gt;";
                      break;
                  case "\"":
                      return "& quot;";
                      break;
                  case "'":
                      return "& #39;";
                      break;
                  case "&":
                      return "& amp;";
                      break;
                  default :
                      break;
              }
          }
      )
     return str;
  }

转载于:https://www.cnblogs.com/yiissu/archive/2012/05/11/2495842.html

formatData相关推荐

  1. C# TripleDES NoPadding 时对待加密内容进行补字节(8个字节为一个Block)

    补一个空格(半角): private static byte[] FormatData(String str) {var yu = str.Length % 8;if (yu == 0) return ...

  2. 初级程序员常犯错误一览

    作者 | 饶全成 来源 | 码农桃花源(ID:CoderPark) 最近接手其他人做的项目,导致之前的一些幻想破灭了.因为刚工作的时候做项目是php,而php本身的web框架一般只简单区分mvc,稍微 ...

  3. CodeSite使用小结

    一.要使用Codesite,需要引用csintf单元 二.CodeSite的基本方法   (一)AddCheckPoint方法   codesite.AddCheckPoint 加入监测点   (二) ...

  4. 简单的java rpc_Java 简单的rpc 一

    一,简单rpc 是基于Java socket 编程 ServerSocket serverSocket = new ServerSocket(9999);System.out.println(&quo ...

  5. android 获取 service 信息

    引用:http://www.cmd100.com/bbs/forum-redirect-tid-6807-goto-lastpost.html 一段获取正在运行的后台service的代码,如下: // ...

  6. Android开发技巧--Application, ListView排列,格式化浮点数,string.xml占位符,动态引用图片...

    一. Application用途 1. Application用途 创建Application时机 : Application在启动的时候会调用Application无参的构造方法创建实例; Appl ...

  7. 时间序列预测——线性回归(上下界、异常检测),异常检测时候历史数据的输入选择是关键,使用过去历史值增加模型健壮性...

    data download: https://github.com/nicolasmiller/pyculiarity/blob/master/tests/raw_data.csv 数据集样子: y ...

  8. php过滤敏感词实例代码

    php过滤敏感词实例代码 <?php   /**     * Created by JetBrains PhpStorm.     * User: lsl     * Date: 13-8-28 ...

  9. 重新封装了一下NODE-MONGO 使其成为一个独立的服务.可以直接通过get/post来操作

    # 重新封装了一下NODE-MONGO 使其成为一个独立的服务.可以直接通过get/post来操作 # consts.js 配置用的数据,用于全局参数配置 # log.js 自己写的一个简单的存储本地 ...

最新文章

  1. 统一同一物理主机上VMware虚拟出的不同操作系统如何通信
  2. 数据结构--环形链表
  3. python 新闻分析系统 源码_python 源码分析之类型系统
  4. hook什么意思_这是什么骚代码!
  5. aws lambda_AWS Lambda事件源映射:使您的触发器混乱无序
  6. 1.java数组教程及示例知乎
  7. c语言检测数独是否正确,会数独的大佬请进。这是个判断九宫格数独是否正确的程序。...
  8. SpringCloud学习之Hystrix
  9. hilbert谱 matlab,转 matlab 信号处理——Hilbert变换及谱分析
  10. Windows API (DAY07) ShowWindow 函数
  11. 2016 安全行业全景图——By 安全牛
  12. matlab图像的裁剪
  13. QT--警告libpng warning: iCCP: known incorrect sRGB profile
  14. 已解决(Python语法报错)SyntaxError: invalid syntax
  15. Go1.20 arena新特性示例详解
  16. STG游戏中瞄具的基本原理
  17. VOLO: Vision Outlooker for Visual Recognition 阅读笔记
  18. CA-CFAR代码实现
  19. 高可用架构之限流降级
  20. 一百人研发团队的难题:研发管理、绩效考核、组织文化和OKR

热门文章

  1. 【Kaggle Learn】Python 1-4
  2. 2022-2028年中国导热硅胶行业市场研究及前瞻分析报告
  3. 浅显易懂 Makefile 入门 (08)— 默认 shell (/bin/sh)、命令回显、make参数(-n 只显示命令但不执行,-s 禁止所有回显)、单行命令、多行命令、并发执行
  4. 一道有意思的阶乘计算题
  5. 关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化
  6. 【图论】有向无环图的拓扑排序
  7. GPU上如何优化卷积
  8. Docker Context基本原理
  9. Error:Execution failed for task ':app:mergeDebugResources'. Error: java.lang.RuntimeException: Som
  10. 第16届信息安全与对抗技术竞赛-Misc