客户端onxup在aspx控件中

时间:2014-12-04 08:15:05

标签: javascript c# asp.net

我正在尝试在文本框中进行javascript调用,如下所示

<asp:TextBox ID='Textbox1' runat='server'></asp:TextBox>

我需要以这样的方式进行用户输入:用户不能在点之前放置9位以上,在点之后放置9位数。 例如,123456789.123456789这是用户可以输入的最大长度。我需要在按键或键盘事件中执行此操作。请帮我怎么做。

3 个答案:

答案 0 :(得分:0)

为什么不使用或使用AJAX Control Toolkit Masked Edit Extender? 首先,您的正则表达式如下所示:^\d{1,9}(\.{1,9})?$。你像这样申请:

<asp:TextBox ID='Textbox1' runat='server'></asp:TextBox>
<asp:RegularExpressionValidator runat="server" ControlToValidate="Textbox1" 
     ErrorMessage="Invalid format" ValidationExpression="^\d{1,9}(\.{1,9})?$" 
     SetFocusOnError="true"/>

答案 1 :(得分:0)

你可以使用JQuery来做到这一点。

语法:

$('#textboxID').on('KeyUp',function({
    // Validation Logic
}));

但我建议使用KeyPress事件而不是KeyUp事件。如果您使用KeyUp

,可能会出现以下情况

案例:

用户输入 123456789 ,当他按下第10个键时,文本框将显示 1234567890 。 触发keyUp后,将触发验证,文本将恢复为 123456789 。 虽然它会出现一段时间,但最好是积极主动而不是反应。

参考文献:

答案 2 :(得分:0)

除了JQuery以确保该文本框中只有9个字符,您可以执行此操作

<asp:TextBox runat="server" MaxLength="9"></asp:TextBox>

可能不是答案,但在我看来这是一个更容易的选择。