asp.netAjax--FilteredTextBox控件使用

本文介绍了FilterTextBox控件的功能及使用方法,该控件能够有效防止用户输入非法字符。支持数字、大小写字母限制及自定义字符过滤,适用于网页表单验证等场景。
简介
    FilterTextBox控件是一种文本框的过滤控件,可以阻止用户进行不准确的输入,相比较vs里提供的验证控件显得更为严格,验证控件是在用户输入了不准确的输入后,给出相应的提示,而现在要介绍的FilterTextBox都不给用户输入错误数据的机会。

    重要属性
    TargetControlID:用来设置要控制的文本框
    FilterType:设置被过滤的类型,提供四种
       Custom:如果选择这个选项,就可以在另外的一个属性中自定义不被过滤的字符
       Numbers:让关联的文本框只能输入数字。
       UppercaseLetters:让关联的文本框只能输入大写字母。
       LowercaseLetters:让关联的文本框只能输入小写字母。
    ValidChars:当FilterType设置为Custom时,用来设置有效的字符。

    示例
    1 打开vs2005,新建一个AjaxControlToolKit网站,命名为oec2003_FilteredTextBox
    2 打开默认生成的Default.aspx页面,切换到设计视图
    3 在页面中拖拽4个TextBox和4个FilterTextBoxExtender控件。控件的源码如下
 1 <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender1" runat="server"
 2             TargetControlID="TextBox1" FilterType="UppercaseLetters">
 3 </ajaxToolkit:FilteredTextBoxExtender>
 4 <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender2" runat="server"
 5             TargetControlID="TextBox2" FilterType="LowercaseLetters">
 6 </ajaxToolkit:FilteredTextBoxExtender>
 7 <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender3" runat="server"
 8             TargetControlID="TextBox3" FilterType="Numbers">
 9 </ajaxToolkit:FilteredTextBoxExtender>
10 <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender4" runat="server"
11             TargetControlID="TextBox4" ValidChars="oec2003" FilterType="Custom">
12 </ajaxToolkit:FilteredTextBoxExtender>
    4 保存所有的设计,运行网站,试试看,第四个文本框中就只能输入oec2003了,输入其他的字符时就会发现文本框是没有反应的。

    在页面上如果有一个GridView用来显示数据库的一些数据,而且数据库中有一些数值型的字段,在GridView中可以编辑获取的数据,在这儿用FilterTextBox控件是再合适不过了,可以避免用户在更新时输入不正确的数据。
    1 新建一个web页面,在页面中添加ScriptManager和UpdatePanel控件。
    2 在UpdatePanel控件中添加一个GridView控件,并配置数据源,按照向导进行,当出现下图时,点击高级按钮。

    3 在高级的对话框中钩选[生成insert update delete语句] 项 只有选了此项,GridView才能实现编辑功能。
    4 数据源配置好后,将GridView的数值的字段转换为模板列。
    5 编辑GridView的模板列,在模板列中添加FilterTextBox控件,并设置过滤属性为numbers,TargetControlID关联上模板列中的文本框,模板列代码如下:
 1  <EditItemTemplate>
 2                                 <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("min_lvl") %>'></asp:TextBox>
 3                                 <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender1" runat="server"
 4                                     TargetControlID="TextBox1" FilterType="Numbers">
 5                                 </ajaxToolkit:FilteredTextBoxExtender>
 6 </EditItemTemplate>
 7 
 8  <EditItemTemplate>
 9                                 <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("max_lvl") %>'></asp:TextBox>
10                                 <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender2" runat="server"
11                                     TargetControlID="TextBox2" FilterType="Numbers">
12                                 </ajaxToolkit:FilteredTextBoxExtender>
13  </EditItemTemplate>

保存设计,按f5运行,编辑Gridview就会发现,数值型字段的文本框就只能输入数字了。
 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值