我需要一个输入范围,显示巴西货币格式的值。 从逻辑上讲,在将其格式化的函数中接收此数字,然后返回格式化的值就足够了。但这是Javascript,我没有找到使它起作用的方法。
function converter(valor){
var numero = (valor).toLocaleString('pt-BR');
document.getElementById('valor').value = 'R$ '+numero;
}
<input type="range" min="0" max="4000.00" value="2000.00" step="0.01" style="width:100%" oninput="converter(this.value)">
<p>
<input type="text" name="valor" value="R$ 0,00" id="valor">
答案 0 :(得分:1)
您可以使用toLocaleString()
的第二个参数,即options
样式参数,您可以在其中设置货币,因此您甚至不需要将串联与{{1} },因为它将在调用"R$"
时准备就绪。
请注意,它不适用于您,因为toLocaleString
是javascript中toLocaleString()
的组成部分,并且您拥有的参数Number.prototype
是字符串,因此,如果您不会将字符串解析为数字。
请参阅下文。
valor
function converter(valor){
var numero = parseFloat(valor).toLocaleString('pt-BR',{ style: 'currency', currency: 'BRL' });
document.getElementById('valor').value = numero;
}