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 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 ...
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
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. Xem demo
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
Nguồn: http://www.thietkewebsmart.com/html-css/format-number-voi-javascript-/868.htm