Если вы ищете краткое решение ASP.NET, вы можете использовать элемент управления RegularExpressionValidator, чтобы ограничить содержимое ASP.NET TextBox. Вам не нужно писать какой-либо серверный или клиентский код, кроме определения тега страницы и регулярного выражения, используемого для проверки. Проверка будет проверена с обеих сторон.
Например:
<asp:TextBox id="txtItem" runat="server" MaxLength="50"></asp:TextBox>
<asp:RegularExpressionValidator id="SomeFieldValidator" runat="server"
CssClass="SomeClass" ControlToValidate="txtItem"
ErrorMessage="This field only accepts ASCII input." Display="Dynamic"
ValidationExpression="^[A-Za-z0-9]*$"></asp:RegularExpressionValidator>
В этом фрагменте txtItem - это TextBox, который нуждается в проверке. элемент управления SomeFieldValidator связан с помощью атрибута ControlToValidate с элементом управления txtItem . Атрибут ValidationExpression является регулярным выражением, которое используется для принудительного применения содержимого TextBox. Согласно документации, это выражение должно быть написано так, чтобы оно было совместимо с регулярными выражениями JScript и .NET Regex. Кроме того, я установил здесь регулярное выражение только для буквенно-цифровых символов. Возможно, вы захотите использовать что-то вроде ^ [\ w \ s] * $ вместо - если вы на самом деле заинтересованы в печатных символах, а не просто в ASCII.
Дополнительным преимуществом использования этого метода является то, что вы также можете вставлять эти валидаторы в страницы ASPX обновляемых приложений, не требуя ничего, кроме перезапуска пула приложений.
Также удобен элемент управления RequiredFieldValidator . Вы можете связать их с TextBox элементами управления, к которым также прикреплен RegularExpressionValidator . Они обрабатывают случай, когда требуется ввод в TextBox .
Вот несколько справочных ссылок.
RegularExpressionValidator Control на MSDN
RequiredFieldValidator Control на MSDN
Классы символов в MSDN (для регулярных выражений)
Ссылка на объект JavaScript RegExp