2016-06-08 185 views
0

我需要一个正则表达式来限制小数点前10位数和小数点后2位数的位数。我曾尝试与此在小数点前后限制'n'位的正则表达式

if (!(/^\d{1,10}(\.$|\.\d{1,2}$|$)/).test(value)) { 
    event.preventDefault(); 
    event.stopPropagation(); 
} 
<input id="input" type="number" /> 

它工作正常输入型文本。但它是不工作的型号。

Working Fiddle

请帮我在这

+0

你不需要,如果你正在使用正则表达式 – HudsonPH

+0

Thanks.Then使用型号我们如何能够限制用户在打字时 – Gopesh

+1

你拨弄代码是这样做的,不是吗? – HudsonPH

回答

1

这应该工作。

if(! (/^[0-9]{10}\.[0-9]{2}$/).test(1234567890.12)) { 
} 

只要使用这个表达式/^[0-9]{10}\.[0-9]{2}$/在你的代码,以验证是否值是小数点前10位和后2。

1

参数

  • oninput:检测到input标签立即改变。
  • max:设置最大值。
  • min:设置最小值。
  • type:设置您想要的标签的类型为input
  • value:设置当前值。
  • step:设置上升或下降的数量。

//(function(object){object.value=parseFloat(object.value).toFixed(2);})(this) 
 

 
//(function(object){var val=object.value;object.value=val.slice(0,val.indexOf('.')+3);})(this)
<input id="input" oninput="(function(object){object.value=parseFloat(object.value).toFixed(2);})(this)" type="number" value="0.00" step="0.01" min="0.00" max="9999999999.99" />

JSFiddle