Здравствуйте, я пытаюсь использовать Intl.NumberFormat для форматирования значений моей валюты в текстовом поле со следующим кодом:
, но я получил это при нажатии клавиши:
function formatCurrency(input) {
// appends $ to value, validates decimal side
// and puts cursor back in right position.
// get input value
var input_val = input.value;
let formatter = new Intl.NumberFormat([], {
style: 'currency',
currency: 'BRL'
})
input.value = formatter.format(input_val);
}
(function initalize() {
// IIFE method
let input = document.querySelector("input[data-type='currency']")
input.addEventListener("keyup", (e) => {
formatCurrency(e.target);
})
})();
<div class="input_renda">
<h3 class="textfield_label">
value
</h3>
<div class="material-textfield">
<input type="text" name="currency-field" id="currency-field" value="" data-type="currency"
placeholder=" R$ 1,000,000.00" />
</div>
</div>