12/9/11

Format Number với javascript

Khi lập trình yêu cầu có nhập số liệu cần tính toán, đôi khi bạn cần FormatNumber để phân cách hàng nghìn trong khi nhập liệu. Lúc đó bạn nen dùng hàm trong javascript
Bài viết này sẽ giới thiệu hàm để FormatNumber theo yêu cầu.
Bạn cần thực hiện 2 hàm trên trong javascript

1. Hàm FormatNumber khi đang nhập dữ liệu 
Xử dụng hàm này với thuộc tính onkeyup="FormatNumber(this);"
function FormatNumber(obj) {
var strvalue;
if (eval(obj))
    strvalue = eval(obj).value;
else
    strvalue = obj; 
var num;
    num = strvalue.toString().replace(/\$|\,/g,'');

    if(isNaN(num))
    num = "";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num*100+0.50000000001);
    num = Math.floor(num/100).toString();
    for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
    num = num.substring(0,num.length-(4*i+3))+','+
    num.substring(num.length-(4*i+3));
    //return (((sign)?'':'-') + num);
    eval(obj).value = (((sign)?'':'-') + num);
}
 2. Hàm FormatNumber khi đã nhập xong cần FormatNumber dữ liệu vừa nhập
 function formatCurrency(num) 
 {
    num = num.toString().replace(/\$|\,/g,'');
    if(isNaN(num))
    num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num*100+0.50000000001);
    num = Math.floor(num/100).toString();
    for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
    num = num.substring(0,num.length-(4*i+3))+','+
    num.substring(num.length-(4*i+3));
    return (((sign)?'':'-') + num);
}
Để hiểu hơn về cách áp dụng các hàm trên bạn tham khảo bài viết sau: Lập trình với Form nhập liệu kiểu hóa đơn bán hàng 
Bookmark and Share

0 comments:

Post a Comment

Next previous home

Cộng đồng yêu thiết kế Việt Nam Thiet ke website, danang