Как разрешить ввод в текстовое поле только английских (A-Z) символов? - PullRequest
3 голосов
/ 22 марта 2010

Я хочу, чтобы в моем asp:TextBoxasp:Login элементе управления) печатались только английские символы.

Как я могу это сделать?

Ответы [ 2 ]

12 голосов
/ 22 марта 2010

Если вы хотите проверить ввод

Используйте RegularExpressionValidator элемент управления. Есть достойный пример и объяснение на Как: использовать регулярные выражения для ограничения ввода в ASP.NET .

Регулярное выражение только для английских (верхний и нижний регистр A-Z) символов: ^[A-Za-z]*$

Если вы тоже хотите включить числа, ^[A-Za-z0-9]*$

Фрагмент разметки, который вы хотите добавить:

<asp:RegularExpressionValidator ID="regexpName" runat="server"     
      ErrorMessage="Only upper and lower case A-Z may be entered here." 
      ControlToValidate="txtInput"     
      ValidationExpression="^[A-Za-z]*$" />

Если вы хотите запретить пользователю вводить что-либо еще в поле

Вам лучше использовать скрипт jQuery в ответе на этот вопрос: как блокировать или ограничивать специальные символы из полей ввода с помощью jquery?

НО вы также всегда захотите проверить ввод (что, если пользователь отключит JavaScript, например), поэтому используйте также метод проверки, описанный выше.

1 голос
/ 22 марта 2010

Этого можно добиться с помощью FilteredTextBox .

Это также может быть сделано с простым javascript (FilteredTextBox также полагается на javascript, но вы можете сделать это только с javascript, который вы пишете сами), зарегистрировав прослушиватель onKeyUp и отфильтровав символы, которые не входят в допустимое подмножество ( возможно с регулярным выражением заменить)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...