续上一篇:ASP.NET验证:多行文本框字数限制-Javascript
经过深入搜寻,从这篇文章获得方法http://www.cnblogs.com/surfsky/archive/2006/10/10/525061.html,终于“简单”实现了“多行文本框字数限制”的功能。代码如下: HTML: <asp:TextBox ID="CommentTextBox" runat="server" TextMode="multiline" Rows="5" Width="100%"></asp:TextBox> <asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="" ControlToValidate="CommentTextBox" ClientValidationFunction="CommentLengthValidator">Limited characters 500!</asp:CustomValidator>
ClientScript (Javascript): <script language="javascript">
function CommentLengthValidator(src, args)
{
if(args.Value.length > 500)
{
args.IsValid=false;
}
else
{
args.IsValid=true;
}
}
</script>
补充说明:
1. 最终还是使用了Javascript,但是这是在客户端进行的验证,效果要比回发到服务器好。
2. CustomValidator 控件可以分别使用客户端和服务端代码实现验证。下面是微软的介绍: http://msdn2.microsoft.com/en-us/library/9eee01cx(VS.71).aspx http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.customvalidator(VS.71).aspx
3. 相比纯Javascript方法简单之处是不用考虑复制、手写等细节,因为控件已经为我们处理好了,我们只要写好验证逻辑就OK了。
|
请发表评论