2016-05-13 30 views
2

如何限制<input="text">中的十進制數僅顯示整數。該字段只顯示像沒有11.00如何限制input =「text」中的十進制數只顯示整數

<input type="text"> 

不使用

<input type="number"> 
+0

使用上的變化 – thatOneGuy

+1

可能的複製Math.round()[我怎樣才能把JavaScript的數的小數部分(http://stackoverflow.com/questions/7641818/how -can-i-remove-the-decimal-part-from-javascript-number) – thatOneGuy

+0

[在HTML(5)文本輸入中掩蓋字符的最簡單方法](http://stackoverflow.com/questions/10887645/最簡單的方式來掩蓋字符在HTML5文本輸入) – kayess

回答

-1

也許你可以一分鐘的屬性添加到您的輸入html元素。 這樣

<input type="number" min="0"> 
0

可以使用parseInt()去除小數部分沒有四捨五入11.9 =>1111.1 =>11和等):

<input type="text" id="num"> 

var n = 11.13; 
document.getElementById('num').value = parseInt(n); // 11 

或只是+操作者:

var n = 11.13; 
document.getElementById('num').value = +n; // 11 
0

您可以使用match()方法來檢查輸入值的格式。

var input = document.getElementById("number"); 
 
var lastValue = ""; 
 

 
input.addEventListener("keydown", valueCheck); 
 
input.addEventListener("keyup", valueCheck); 
 

 
function valueCheck(){ 
 
    if (input.value.match(/^[0-9]*$/)) 
 
     lastValue = input.value; 
 
    else 
 
     input.value = lastValue; 
 
}
<label>Type your value</label> 
 
<input type="text" id="number" />

+0

@ J.Doe它是你的解決方案嗎? – Mohammad

相關問題