在 Asp.NET 中有时需要文本框仅仅插 入数字值。有序到方式来实现这个功能,你可以使用 JavaScript 的 onKeyPress 事件等方式来实现。另一种方式制定正则表达式并使用正则表达式验证器来实现。
现在我们知道在 Asp.NET 中可以使用 Ajax 扩展控件设置文本框的一些属性 让文本框仅接受数字值。我们可以设置一些修饰像仅日期格式或其他一些货币格式等。
然我们看看如何实现的。
首先从下载 AJAX 控件,地址:
http://www.codeplex.com/AjaxControlToolkit/Release/ProjectReleases.aspx?ReleaseId=11121
解压下载的文件并添加“ AjaxControlTookit.dll ”引用到你的项目。
在页面指令中添加下面代 码:
<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="cc1" %>
在 Web 页面中放置一个 TextBox ,按如下添加扩充项:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<cc1:MaskedEditExtender ID="TextBox1_MaskedEditExtender" runat="server"
MaskType="Number" Mask="99999999" Enabled="True"
TargetControlID="TextBox1" />
同样你也可以隐藏文本框 的值。建议在用户输入值是你可以在 3 个字符后面或 2 个字符后面自动添加连字符,在 Asp.NET 中使用隐藏文本框也能实现这个功能。
看一个例子:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<cc1:MaskedEditExtender ID="TextBox1_MaskedEditExtender" runat="server"
MaskType="Number" Mask="999-999-9999" Enabled="True"
TargetControlID="TextBox1" />
上面的例子用户输入安全 数字时很好用。同样,你可以根据你的需要改变 Ajax 扩展的 Mask 属性。
现在,如果你在这个控件 中选择 DateTime , Date , Time 仅仅能接受最大 8 个字符的数字的值。