ASPX 控件中的客户端 OnKeyUp
本文关键字:客户端 OnKeyUp 控件 ASPX | 更新日期: 2023-09-27 18:32:59
我正在尝试在文本框中进行javascript调用,如下所示
<asp:TextBox ID='Textbox1' runat='server'></asp:TextBox>
我需要让用户输入的方式是,用户不能在点之前输入超过 9 位数字,在点之后输入超过 9 位数字。例如 123456789.123456789,这是用户可以输入的最大长度。我需要在按键或键控事件中执行此操作。请帮我怎么做。
为什么不使用 AJAX 控件工具包屏蔽编辑扩展器?首先,您的正则表达式如下所示:^'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"/>
在 JQuery 旁边,以确保该文本框中只有 9 个字符,您可以执行此操作
<asp:TextBox runat="server" MaxLength="9"></asp:TextBox>
可能不是答案,但在我看来,这是一种更容易的替代方案。
你可以使用 JQuery 来做到这一点。
语法:
$('#textboxID').on('KeyUp',function({
// Validation Logic
}));
但我建议使用KeyPress事件而不是KeyUp事件。以下是使用KeyUp时可能会偷偷溜走的情况
箱:
用户具有输入123456789,当他按下第 10 个键时,文本框将显示1234567890。触发 keyUp 后,将触发验证,文本将恢复为123456789。虽然它会出现很短的时间,但主动比被动更好。
引用:
- 密钥接口
- 按键接口
- 事件 API 上
- 仅适用于数值