首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CustomValidator OnServerValidate不工作

CustomValidator OnServerValidate不工作
EN

Stack Overflow用户
提问于 2012-10-18 00:50:26
回答 2查看 9.6K关注 0票数 1

我正在尝试使用带有关键字"OnServerValidate“的CustomValidator

下面是我在.aspx文件中设置它的位置:

代码语言:javascript
复制
<div class="label">
    <div><label for="parentemail1">Email Address</label></div>
    <div><asp:TextBox ID="parentemail1" runat="server" MaxLength="40" Columns="40"></asp:TextBox></div>                      
        <asp:CustomValidator id="ParentEmail1Required"
        ControlToValidate="parentemail1"
        Display="Dynamic"
        ErrorMessage="Required"
        ValidateEmptyText="true"
        OnServerValidate="ServerValidator"
        runat="server"/>                          
</div>

下面是OnServerValidate的C#代码隐藏方法:

代码语言:javascript
复制
protected void ServerValidator(object source, ServerValidateEventArgs args)
{
    args.IsValid = false;
}

我是不是遗漏了什么,提交表单时CustomValidator不是应该触发吗?

我已经阅读了一大堆帖子,甚至在同一个控件上用RequiredFieldValidator尝试了一下,但没有成功。我已经用ClientValidationFunction实现了这一点,但我想访问后台代码中的属性,而不是DOM。

任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-18 01:03:53

尝尝这个

代码语言:javascript
复制
protected void ServerValidator(object source, ServerValidateEventArgs args)
{
    if(args.IsValid == false)
       return;
    Response.Redirect("NextPage.aspx");// It will not fire if page is not valid.
}
票数 4
EN

Stack Overflow用户

发布于 2014-08-24 06:12:17

参数args没有被发送到服务器,这就是为什么你得不到服务器消息的原因。添加一个按钮可以做到这一点。

将代码更改为

代码语言:javascript
复制
<div>
        <div class="label">
    <div><label for="parentemail1">Email Address</label></div>
    <div><asp:TextBox ID="parentemail1" runat="server" MaxLength="40" Columns="40"></asp:TextBox>
        <br />
        <asp:Button ID="btnSendData" runat="server" Text="Send Data" />
            </div>                      
        <asp:CustomValidator id="ParentEmail1Required"
        ControlToValidate="parentemail1"
        Display="Dynamic"
        ErrorMessage="Required"
        ValidateEmptyText="true"
        OnServerValidate="ServerValidator"
        runat="server" SetFocusOnError="True"/>                          
</div>
    </div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12939314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档