簡體   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