Asp.net如何限制textbox按键事件中小数点前后的位数

时间:2014-07-24 16:44:50

标签: c# javascript jquery asp.net

我有一个带文本框的Gridview。如何限制文本框按键事件中小数点前后的位数?我希望小数点前最多6位,小数点后2位。 我如何使用javascript / JQuery做到这一点?

2 个答案:

答案 0 :(得分:2)

我个人不喜欢在用户输入内容时立即删除数据。

相反,我喜欢在输入数据后显示错误消息。

例如,

<asp:TextBox runat="server" ID="TextBox1" MaxLength="9" />
<asp:RegularExpressionValidator runat="server" ID="RegularExpressionValidator1"
    ValidationExpression="^((\d{5})*|([1-9]\d{0,5}))(\.\d{0,2})?$"
    ControlToValidate="TextBox1" Text="Input must be 123456.78 format." 
    Display="Dynamic" />

答案 1 :(得分:1)

最简单的javascript验证香草风格检查

http://jsfiddle.net/InferOn/8aCJc/

<强> HTML

    <input type="text" id="myInput" onkeyup="check()" />

<强>的Javascript

 function check() {
  var check = true;
  var txt = document.getElementById('myInput');
  tmp = txt.value;
  if (tmp && tmp.length > 0) {

    arg = tmp.split('.');
    if (arg && arg.length > 0) {

      check = arg[0].length <= 6;
      if (arg.length > 1 && check) {
        check = arg[1].length <= 2;
      }
    }


  }
  if (!check)
    alert('check failed');

}