2012-04-20 58 views
3

當使用輸入類型的數字和數字的位數超過16時,是否有其他人遇到過Chrome的問題?在我的情況下,第16位以後的任何東西都會被模糊上的零代替。這在其他瀏覽器中不會發生。HTML5輸入類型數字16位或更多Chrome替換爲零

<label for="some-number-input">Number Input</label> 
<input type="number" name="some-number-input" id="some-number-input" /> 

除了改變輸入類型之外,還有解決方案嗎?

謝謝。

回答

4

當輸入的數字模糊時,Chrome會分析該數字。根據WHATWG standard,它應該將其轉換爲IEEE 754雙精度浮點數,就像數字在JavaScript中表示的方式一樣。而且就像在JavaScript中一樣,這些數字可以具有精度的限制,因此四捨五入。

您可能需要使用<input type="text">代替..

+0

感謝您的輸入。我試圖遠離使用輸入類型文本,因爲我希望數字小鍵盤出現在移動設備上。輸入類型tel的工作原理是它沒有輪迴,但它在語義上不正確,另外它顯示數字鍵盤上的字母。對此有何想法? – 2012-04-23 14:07:44

+1

您確定輸入類型編號在語義上是否正確?如果你輸入的是身份證號碼或者我很確定那是不正確的。如果你只是想數字小鍵盤另一篇文章說[你可以設置iOS設備的模式屬性](http://stackoverflow.com/questions/6178556/iphone-numeric-keyboard-for-text-input),但我不不知道這是否適用於其他地方。 – gengkev 2012-04-24 22:52:41

+0

你說得對,看起來我沒有根據規範正確使用數字類型。感嘆,看起來模式「\ d *」在Android上不起作用。看起來像目前沒有辦法強制數字鍵盤長ID號。 – 2012-04-25 17:08:29

相關問題