2016-05-13 33 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

相关问题