Html input currency with comma

I just want to ask how to make a JavaScript of currency format of input type text. Is it possible that the numbers will have comma while you type the number? Also, how to make the number fixed with 2 decimal numbers. If I input a 3 decimal placed numbers the last number will round off so it can be 2 decimal.

I have a textbox which accepts numbers only and I want it to automatically convert the numbers into currency format. 1234.556 will be Php 1,234.56. (Php means Philippine peso)

Here's my input type text:

 

Html input currency with comma

Sid M

4,3504 gold badges28 silver badges50 bronze badges

asked Jun 4, 2014 at 6:48

maybe like this?

var formatNumber = function (val){
    return val.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
}

answered Jun 4, 2014 at 6:55

bektbekt

5874 silver badges16 bronze badges

1

function formatPera(num) {
    var p = num.toFixed(2).split(".");
    return "Php " + p[0].split("").reverse().reduce(function(acc, num, i, orig) {
        return  num + (i && !(i % 3) ? "," : "") + acc;
    }, "") + "." + p[1];
}

var money = 1234.556;
money = formatPera(money);

console.log(money); // Php 1,234.56

Also, credit goes to: https://stackoverflow.com/a/5342097/1978142

answered Jun 4, 2014 at 7:03

user1978142user1978142

7,9143 gold badges16 silver badges20 bronze badges

1

Yes it is easy for expression you can do as Sam said above...but for input form it would be trickier....Just share my experience on this....

You can use help 1 extra variable and use of custom mask component.

Bind custom mask to this 1 variable and make this variable as variable for input widget.

Then don't forget to convert to necessary format when you do save action

Hi @Eric Halim! What's a custom mask component, if you could please elaborate

Hello,

On an expression, you can use the system function 'FormatDecimal' where you can set the number of decimal places, the thousands separator character, and the decimal separator character. 

FormatDecimal(TextToDecimal("1234.556"),2,".",",")

On Inputs, for web applications, you can use the forge component Custom Masks and for mobile applications, you can use forge component Input Masks Mobile.

Hope it helps.

Regards,

DO

Hi,

Please use mask input for mentioned requirement.

Thanks!

To expand on this question..what if 123456 to $1234.56

Thank you,

FrankCLT

Hello FrankCLT,

You can use the built-in action FormatCurrency to do that. Please see the documentation here.

Note: I think you should create a new post because your question is different from the original post in 2018.

BR,

Luis

FrankCLT wrote:

To expand on this question..what if 123456 to $1234.56

Thank you,

FrankCLT

Author:amiryxe
Views Total:1,137 views
Official Page:Go to website
Last Update:June 22, 2022
License:MIT


Preview:

Html input currency with comma

Description:

A really simple JavaScript plugin that lets you format a number with a custom character (default: comma) as a thousands separator.

How to use it:

1. Import the easy-number-separator.js JavaScript library.

2. Attach the easyNumberSeparator to the input field you specify and done.

easyNumberSeparator({
  selector: '.number-separator',
})

3. Customize the thousands separator. Default: comma(,).

easyNumberSeparator({
  selector: '.number-separator',
  separator: '.'
})

4. If you want to send data to the server, you can set a result input by resultInput property and hold the original value.

 
easyNumberSeparator({
  selector: '.number-separator',
  separator: ',',
  resultInput: '#result_input',
})

Changelog:

06/22/2022

  • fix bug in default configs and decimal separator

11/21/2021

  • fix: run separator on phone keyboards

10/19/2021

  • create result input to hold original value

10/08/2021

  • JS Update

How do you input currency in HTML?

.

Auto Formatting Currency

.
.
.
.
.

How do you use commas in currency?

Some countries use a comma (,) instead of a decimal to indicate that separation..
500 or 500,00 or 500.00 = five hundred dollars and no cents..
500,15 or 500.15 = five hundred dollars and fifteen cents..
500,150 or 500.150 or 500,150.00 or 500.150,00 = five hundred thousand, one hundred fifty dollars and no cents..