ASP.NET 验证控件可以确保在用户输入中只允许使用某些字符。 但是,这仍不会阻止用户键入无效字符并尝试提交表单。
概述
ASP.NET 验证控件可以确保在用户输入中只允许使用某些字符。 但是,这仍不会阻止用户键入无效字符并尝试提交表单。
步骤
ASP.NET AJAX 控件工具包包含 FilteredTextBox 扩展文本框的控件。 激活后,只能将一组特定字符输入到字段中。
为此,我们首先需要像往常一样 ASP.NET AJAX ScriptManager ,它加载 ASP.NET AJAX 控件工具包也使用的 JavaScript 库:
<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 的验证控件。
单击可 查看全尺寸图像 (只能输入数字)