formatData
//解決傳入0 格化后不返回空的問題
function formatAmountValueNew(objValue,flag)
?{
??if(objValue!="" && objValue!=null)
??{?
???if(flag==0)
???{
????// 驗(yàn)證輸入金額數(shù)值或數(shù)值字符串:
????return objValue.toString().replace(/,/g, "");
???}
???else
???{
????
????return? convertAmount(objValue);
???}
??}
??return '0';
?}
//格式化值,0為格式還原,1為格式操作
function formatAmountValue(objValue,flag)
?{
??if(objValue!="" && objValue!=null)
??{?
???if(flag==0)
???{
??????// 驗(yàn)證輸入金額數(shù)值或數(shù)值字符串:
????return objValue.toString().replace(/,/g, "");
???}
???else
???{
????
????return? convertAmount(objValue);
???}
??}
??return "0.00";
?}
?
//進(jìn)行格式轉(zhuǎn)換
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)
//???{
//????// 驗(yàn)證輸入金額數(shù)值或數(shù)值字符串:
//????objValue = 0+parseFloat(objValue).toLocaleString();
//???}
//???else if(objValue.indexOf("-")==0&&objValue.indexOf(".")==1)
//???{
//????//當(dāng)輸入-0.5的時候返回-0.50
//????objValue = "-0"+objValue.substring(1);
//???}
//???return objValue;
??}
?}
?return "0.00";
}
?
//數(shù)字,自動轉(zhuǎn)換成有千分位的形式 num--數(shù)字 , digit 保留小數(shù)位?? 將數(shù)字轉(zhuǎn)換成三位逗號分隔的樣式??
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)
?{
??//解決單個對象操作的數(shù)組問題
??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]);
??}
?}
}
/*格式化浮點(diǎn)型數(shù)據(jù),轉(zhuǎn)換成整型
tab_id:行表tableID
input_id:要格式化的字段id
td_num:如果要格式化的字段沒有id時,取字段的列數(shù)
*/
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;
}
//轉(zhuǎn)特別字符
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;
??}
轉(zhuǎn)載于:https://www.cnblogs.com/yiissu/archive/2012/05/11/2495842.html
總結(jié)
以上是生活随笔為你收集整理的formatData的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 刀尖上的搏杀有第二部吗
- 下一篇: solr 3.5 配置及服务器设置