如何限制两位数的十进制值并限制数值中的十进制数多于一个
How to restrict decimal value for two digits and restrict decimal more than one in numeric value
我有一个数量字段,我想限制用户在小数之后,他们不能使用两个以上的值:
- 在小数之后应该只有两个值是可选的。
- 用户不能在字段中输入一个以上的小数。
我正在使用以下regix,因为它不工作,可以任何一个帮助。
function validate(evt) {
if (evt.keyCode == 8) { return true; }// for backspace problem in mozilla
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode(key);
var regex = /[0-9 ]|','d{1,2}/;
if (!regex.test(key))
{
theEvent.returnValue = false;
if (theEvent.preventDefault) theEvent.preventDefault();
}
}
这实际上可以通过设置数值字段的STEP和MAX来实现,例如
<form>
<input type="number" name="myNumber" required=true step=".01">
<button>send</button>
</form>
请让我知道,如果这是你所寻找的,但这将意味着,输入的任何值必须是数字(因此只有1小数点),它必须小于或等于1(你可以设置为0.99,如果你不想包括1),它必须是0.01的增量(所以它只能有2个小数点。
请重新阅读您的问题,您可以删除max(我认为我读取不超过1.0)
var previousValue;
function numberChanged(element){
if(validateMe(element)==false){
element.value=previousValue;
}else{
previousValue=element.value;
}
function validateMe(element){
wholeNumber=element.value.split(".")[0];
if(element.value.split(".").length==1){
if(wholeNumber<-1 || > 999999999){
return false;
}
}else if(element.value.split(".").length==2){
decimalValue=element.value.split(".")[1];
if(decimalValue>-1 && decimalValue<100){
if(wholeNumber<-1 || > 999999999){
return false;
}
}else{
return false;
}
}else{
return false;
}
}
<input type="text" id="myNumber" onChange="numberChanged(this)" />
相关文章:
- 缩放仅适用于一个图元
- 如何生成十进制数
- 将一个十进制数转换成八分之一的分数
- JavaScript basis 是 math.pow 函数中的十进制数
- 用于验证十进制数的正则表达式
- 如何使用 javascript 将浮点数格式化为十进制数(7)
- 使用window.location.htm和匹配的URL数组(一个用于桌面,一个用于移动)将桌面网站重定向到移动
- onclick适用于一个按钮,但不适用于'不要为别人工作
- 如何在javascript中输入十进制数
- 响应于一个“;输入“;在<输入>领域
- JavaScript-getElementsByClassName适用于一个函数,但不适用于另一个函数
- 使用jquery验证器插件为十进制数设置正则表达式
- 当我尝试在循环中使用.push时,它似乎比间隔数提前一个阶段开始,这似乎会导致溢出
- 用于在字符串中查找十进制数的正则表达式
- 谷歌地点/几何库仅适用于一个国家
- 调整大小功能仅适用于一个维度
- 如何验证十进制数
- 在 sort() 之后,十进制数的 JavaScript 数组顺序不正确
- 为什么项目符号图显示十进制数,而我们的范围为1
- 如何限制两位数的十进制值并限制数值中的十进制数多于一个