2010-07-28 88 views
0

如何防止用户在我的文本框中输入除字母字符之外的任何内容?只允许在asp.net中的文本框中输入字母字符

更新 忘了提及它的一种动物控制(在用户单击按钮时在窗体上创建)。

+1

是否要验证文本框是否只包含字母字符,或者防止用户首先输入非alphas? – LukeH 2010-07-28 11:16:34

+0

如果可能,请阻止用户,否则在lostfocus上进行验证。 – user279521 2010-07-28 11:33:45

回答

1

只有内置ASP.NET功能,您可以使用<asp:RegularExpressionValidator>控件,并使用像[A-Za-z]*这样的常规表达式。这将在服务器端验证(这应该是您主要关注的问题),并在回发时提供用户友好的错误消息。如果您使用MVC框架,也可以使用这些控件进行客户端验证,但我不知道在WebForms中的工作方式或工作方式。

使用jQuery,对于客户端验证以及jquery.validation插件有无限的可能性。

+1

客户端验证在WebForms中完美工作,RegularExpressionValidator将验证该字段并防止提交表单。 – 2010-07-28 11:38:17

+0

@Ben:那好 - 我的答案更有用! =) – 2010-07-28 11:39:27

+0

但它是一个动态控制。我如何将一个regularExpressionValidator放在一个不存在于设计时的控件上。什么是“controlToValidate”? – user279521 2010-07-28 11:42:31

0

我会在动态创建的文本框上设置一个CssClass,然后使用jQuery和一些自定义JavaScript /正则表达式在关键事件中使用该CssClass过滤任何输入字段。

过滤的TextBox扩展器很好,你也可以使用它,对我来说,jQuery解决方案会更容易和灵活。

相关问题