日期:2014-05-20 浏览次数:20905 次
<asp:RequiredFieldValidator ID="RequiredRfvName" runat="server" ControlToValidate="UserName_Txtbox" Display="Dynamic" ErrorMessage="用户名不能为空" Font-Size="9pt" Width="99px"></asp:RequiredFieldValidator> //上面这个验证控件就可以提示错误,并且有错误时不能提交成功进入下个页面。 <asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="UserName_Txtbox" Display="Dynamic" ErrorMessage="该用户名已存在" Font-Size="9pt" OnServerValidate="CustomValidator1_ServerValidate"></asp:CustomValidator> //这个customvalidator控件就不行,不会显示错误信息。它的事件是在提交成功转到另一个页面时候发生的。不知道为什么可以成功转到另一个页面,虽然在检测时候 isValid的值肯定是 false的。 //检测会员名字是否已存在 string SqlStr = "select count(*) from tb_UserLogin where UserName='" + args.Value +"'"; //数据类型转换 int result = ep.EXECuteScalar(SqlStr); //指定控件是否通过验证 if (result > 0) { args.IsValid = false; } else { args.IsValid = true; }
if (Page.IsValid == true) { lblOutput.Text = "Page is Valid!"; } else { lblOutput.Text = "Some of the required fields are empty."; }
------解决方案--------------------
压根就不想用.net的验证控件,无非增加了那么多额外代码,也不见得好用哪去。微软自己的网站都不用这东东