2011-11-04 73 views

回答

1

你试过REGEX了吗?

正则表达式看起来像 /^[0-9]+.[0-9]{4}$/ 其中{4}说长后.将4

定义正则表达式: var regex1=/^[0-9]+.[0-9]{4}$/;var yourtextfromTextBox= textBox.text();yourtextfromTextBox.match(regex1); 试试这个

+0

由于Akshay..But该最小四次匹配。 – Premanshu

+0

嗨Akshay, /^[0-9]+.[0-9]{0,4}$/ 解决了问题... 非常感谢你们所有人。 – Premanshu

+0

如果是这种情况,您必须使用'test'而不是'match'。 –

0

您可以使用onkeyup="yourFunction"函数来做到这一点。

0

只是一个想法:jsFiddle live demo

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Round to 4 Decimal Places</title> 
    <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jQuery/jquery-1.4.2.min.js"></script> 
    <script type="text/javascript"> 
     $(function() { 
      $('#input').keypress(function(){ 
       try { 
        val = $(this).val().split('.'); 
        if(val[1] > 999) return false; 
       }catch(e){} 
      }) 
     }); 
    </script> 
</head> 
<body> 
    <p>Type a decimal number in the TextBox, limited to 4 decimals</p> 
    <input id="input" type="text" /> 
</body> 
</html> 

当然,这只适用于.,这个公司通过只允许数字进行改进,并检查,

0
 function decimal_only(e) { 

     var charCode = (e.which) ? e.which : window.event.keyCode 
     if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) { 
      return false; 
     } 

     if (charCode == 46) { //Now Check The Decimal only allow 1 decimal 
      if (e.value.indexOf('.') > -1) { 
       return false; 
      } 
     } 
     return true; 
    } 

使用上的文本框事件onkeypress事件此功能。

onkeypress事件= “返回decimal_only(这)”

这将只允许1位小数和整数值,以用户