2010-07-28 128 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解決方案會更容易和靈活。

相關問題