开发者

No error message displayed for custom validator

I have a requirement that one of multiple fields is required. Using custom validator the even fires, false is returned, but no error message is display and the form开发者_如何学Go validates.

What am I missing? I have tried with and without ValidationSummary.

Thanks!

<asp:CustomValidator ID="CustomValidator1" OnServerValidate="validatePhone" EnableClientScript="false" runat="server" ErrorMessage="Home or Cell Phone is Required" ></asp:CustomValidator>

<asp:ValidationSummary ID="ValidationSummary1" DisplayMode="BulletList"  runat="server" ForeColor="Red" Font-Size="X-Small" Font-Bold="true" />


protected void validatePhone(object sender, ServerValidateEventArgs e)
    {
        e.IsValid = string.IsNullOrEmpty(txtCellPhone.Text) && string.IsNullOrEmpty(txtHomePhone.Text) ? false : true;
    }


You have to set the ControlToValidate to some TextBox.

<asp:CustomValidator ID="CustomValidator1" OnServerValidate="validatePhone" EnabEnableClientScript="false" runat="server" ErrorMessage="Home or Cell Phone is Required" ControlToValidate="txtHomePhone"/>


Check out this article. Basically you need to wire up the client side validation. Add the following just before the closing form tag changing the control names as needed:

<%-- This configures the validator to automatically--%> 
<%-- update when either of these controls is changed --%>
<script type="text/javascript">
   <!--
      ValidatorHookupControlID("<%= MyControl1.ClientID %>", 
      document.getElementById["<%= CustomValidator1.ClientID %>"]);
      ValidatorHookupControlID("<%= MyControl2.ClientID %>", 
      document.getElementById["<%= CustomValidator1.ClientID %>"]);
   //-->
</script>

Alternatively use this control


Issue was completely my fault. On my submit button the final thing I do is a Response.Redirect. The message was coming up, but then the Thank you page was being presented. Now only doing the Response.Redirect if the customvalidator returns true.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜