繁体   English   中英

输入类型= [数字]在显示时将float转换为int

[英]Input type=[number] converts float to int on display

我想在一个数字输入中显示一个说100.00的值。 可以由用户输入并使用货币,因此显示它很重要。

但是,以编程方式将值设置为100.00时,它将显示的变量重置为100。

但是,如果您写100.00,则可以正常工作。 问题是此输入上存在验证,并且javascript将其刷新为100后刷新了该值。

编辑:似乎只影响Firefox。 我尝试将值添加为

input.value = 100.00

input.value = parseFloat(100.00)

input.value = parseFloat(100.00).toFixed(2).

 document.getElementById('test_input').value = 100.00; 
 <input id="test_input" type="number" step="0.01"> 

和JSFiddle https://jsfiddle.net/3qnL07yu/

您可以像这样更新输入值:

document.getElementById('test_input').value = "100.00";

这是更新的代码: https : //jsfiddle.net/zun0aptf/4/

可能的方式:您可以像这样设置值

 <input id="test_input" type="number" step="0.01" value="100.00">

要么

 document.getElementById('test_input').value = "100.00";

type="number"更改为type="text"并进行数字验证。

 <input id="test_input" type="text" step="0.01">

更新的代码: https : //jsfiddle.net/8c6n012f/1/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM