允许/验证jquery中的整数,十进制,浮点值

Shi*_*dla 2 floating-point validation jquery integer decimal

我有一个像下面的html字段

<input type="text" name="price" class="validate_price" id="price"/>
Run Code Online (Sandbox Code Playgroud)

因此该字段应仅接受来自输入的float,decimal,integer值.

jQuery代码

<script>
   function isFloat(value) 
             { 
                 return value!= "" && !isNaN(value) && Math.round(value) != value;
              }   
   $(document).ready(function(){
       $('.validate_price').focusout(function(){
             var value  = this.value;
             if (value)
                {
                   if (!isFloat(value) || !$.isNumeric(value))
                      alert('Value must be float or not');  
                }     

       });
   });
</script>
Run Code Online (Sandbox Code Playgroud)

所以从上面的代码中,我的意图是,我应该允许用户输入整数值(1,2,2, etc.,),浮点值(1.0, 2.0, 3.0, 3.2, 3.5, etc.)和小数值(2.152, 4.56, 5.000, 6.3256, 2.00 etc.,)

如何检查/实现上述功能?

Mik*_*ike 8

如果您从jQuery.isNumeric()手册中注意到它,它也会验证浮点数,因此不需要包含任何其他参数.要验证一个数字,您所要做的就是使用jQuery.isNumeric():

if (!$.isNumeric(value)) {
    alert('Value must be numeric');
}
Run Code Online (Sandbox Code Playgroud)

我为你做了一个快速的jsFiddle:http://jsfiddle.net/guxz9/