ASP.NET中的CustomValidator验证控件失效。

<asp:CustomValidatorID="CustomValidator1"runat="server"ControlToValidate="TextBox1"Er... <asp:CustomValidator ID="CustomValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="用户名已存在" Display="Dynamic"
ValidateEmptyText="True" onservervalidate="CustomValidator1_ServerValidate"
></asp:CustomValidator>
后台:
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
string cnnstr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlConnection connection = new SqlConnection(cnnstr);
String strCmd = "select count(*) from user where name= '" + args.Value + "'";
SqlCommand sqlCmd = new SqlCommand(strCmd, connection);
sqlCmd.Connection.Open();
int result = Convert.ToInt32(sqlCmd.ExecuteScalar());
if (result>0)
{
args.IsValid = false;
}
else
{
args.IsValid = true;
}
sqlCmd.Connection.Close();
}
展开
 我来答
不想起名字了2333
2012-03-30 · TA获得超过2447个赞
知道大有可为答主
回答量:1931
采纳率:50%
帮助的人:1888万
展开全部
参考MSDN:
Page.IsValid 属性值 如果页验证成功,则为 true;否则为 false。

备注
若要使此属性返回 true,当前验证组中的所有验证服务器控件必须都验证成功。只有在已调用 Page.Validate 方法,或已在开始窗体处理的 ASP.NET 服务器控件的 OnServerClick 事件处理程序中将 CausesValidation 属性设置为 true 后才可以选中该属性。这些服务器控件包括 Button、HtmlButton、HtmlInputButton、HtmlInputImage、ImageButton 以及 LinkButton 类。

如果强制使用 Validate 方法对验证组进行验证,那么指定验证组中的所有验证控件也必须都验证成功。

下面的代码示例演示如何使用 IsValid 属性设置条件语句。如果该属性返回 true,则 lblOutput 控件的 Text 属性被设置为“Page is valid!”。否则,它被设置为“Some of the required fields are empty.”。

C#代码:
void ValidateBtn_Click(Object Sender, EventArgs E) {
if (Page.IsValid == true) {
lblOutput.Text = "Page is Valid!";
}
else {
lblOutput.Text = "Some of the required fields are empty.";
}
}
网易云信
2023-12-06 广告
UIkit是一套轻量级、模块化且易于使用的开源UI组件库,由YOOtheme团队开发。它提供了丰富的界面元素,包括按钮、表单、表格、对话框、滑块、下拉菜单、选项卡等等,适用于各种类型的网站和应用程序。UIkit还支持响应式设计,可以根据不同... 点击进入详情页
本回答由网易云信提供
百度网友1950a79df
2012-03-30 · TA获得超过933个赞
知道小有建树答主
回答量:312
采纳率:0%
帮助的人:367万
展开全部
你的代码看不出有什么问题,因为只有server端验证,所以在提交时需要在server端代码中检查Page.IsValid,否则代码等于不起作用。
追问
能具体说说嘛?判断Page.IsValid是什么意思?
追答
楼下的说明和示例代码已经很清楚了,不再赘述。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lovelymify
2012-03-30 · 超过29用户采纳过TA的回答
知道答主
回答量:231
采纳率:0%
帮助的人:98.8万
展开全部
在load事件中加一个if(!IsPostBack){}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式