Разрешение только некоторых символов в текстовом поле (C#)
Кристиан Венц (Christian Wenz)
ASP.NET элементы управления проверки могут гарантировать, что в вводе пользователем разрешены только определенные символы. Однако это по-прежнему не мешает пользователям вводить недопустимые символы и пытаться отправить форму.
Общие сведения
ASP.NET элементы управления проверки могут гарантировать, что в вводе пользователем разрешены только определенные символы. Однако это по-прежнему не мешает пользователям вводить недопустимые символы и пытаться отправить форму.
Этапы
Набор средств управления ASP.NET AJAX содержит FilteredTextBox
элемент управления, расширяющий текстовое поле. После активации в поле может быть введен только определенный набор символов.
Для этого нам нужно, как обычно, ASP.NET AJAX ScriptManager
, который загружает библиотеки JavaScript, которые также используются набором средств управления ASP.NET AJAX:
<asp:ScriptManager ID="asm" runat="server" />
Затем нам потребуется текстовое поле:
Numbers only: <asp:TextBox ID="TextBox1" runat="server" />
Наконец, FilteredTextBoxExtender
элемент управления ограничивает символы, которые пользователь может вводить. Сначала задайте TargetControlID
атрибут элемента ID
TextBox
управления . Затем выберите одно из доступных FilterType
значений:
Custom
По умолчанию; Необходимо предоставить список допустимых символовLowercaseLetters
Только строчные буквыNumbers
только цифрыUppercaseLetters
Только прописные буквы
Custom FilterType
Если используется , ValidChars
необходимо задать свойство и предоставить список символов, которые могут быть вводимы. Кстати: при попытке вставить текст в текстовое поле будут удалены все недопустимые символы.
Ниже приведена разметка для FilteredTextBoxExtender
элемента управления, который допускает только цифры (то, что также было бы возможно в FilterType="Numbers"
):
<ajaxToolkit:FilteredTextBoxExtender ID="ftbe" runat="server"
TargetControlID="TextBox1" ValidChars="1234567890" />
Запустите страницу и попробуйте ввести букву, если JavaScript включен, она не будет работать; Однако цифры отображаются на странице. Однако обратите внимание, что защита FilteredTextBox
не является маркерной: если JavaScript включен, в текстовое поле могут быть введены любые данные, поэтому необходимо использовать дополнительные средства проверки, например ASP. Элементы управления проверки NET.
Можно вводить только цифры (щелкните для просмотра полноразмерного изображения)
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по