Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

If I have a page that is using a bunch of ASP.NET validation controls I will use code similar to the following to validate the page. Make the call on an input submit. Hopefully this code sample will get you started!

    <input type="submit" value="Submit" onclick"ValidatePage();" />
    <script type="text/javascript">
    function ValidatePage() {
        if (typeof (Page_ClientValidate) == 'function') {
            Page_ClientValidate();
        if (Page_IsValid) {
            // do something
            alert('Page is valid!');                
        else {
            // do something else
            alert('Page is not valid!');
</script>
                You answer plus reading the following post: velocityreviews.com/forums/… helped me solved my problem.
– Michael Kniskern
                Jul 1, 2009 at 16:32
                How could I modify the above code if I have multiple validation groups on the page and I just need to check if a single group is valid?
– The Muffin Man
                May 23, 2011 at 1:27
                See also stackoverflow.com/a/3062770/292060 for arguments to this call, addressing the multiple validation groups.
– goodeye
                Jan 17, 2013 at 2:04
                I forgot to mention that I was checking the Page.IsValid property on the server side on it was not working.
– Michael Kniskern
                Jul 1, 2009 at 15:32

The ASP.NET validation controls expose a client side API you can use with javascript: http://msdn.microsoft.com/en-us/library/aa479045.aspx

You should be able to check the Page_IsValid object to see if any of the validation controls are invalid.

$("input[id$=Button2]").click(function () {
    var validated = Page_ClientValidate('repo');
    if (validated) {
        // JavaScript code.

You can use jQuery and the Validation plugin to perform client side validation. This will work with both html tags and asp.net server controls. Phil Haack has a good sample project that will show you the basics.

This SO question has an in depth review of this approach as well.

Set ValidationGroup property for each asp.net validator control in your page, you have to provide same name to ValidationGroup in a page.

For example:

<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="Required" ValidationGroup="Validate"></asp:RequiredFieldValidator>
    <asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="RangeValidator" ValidationGroup="Validate"></asp:RangeValidator>
    <asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="CustomValidator" ValidationGroup="Validate"></asp:CustomValidator>

After that in your javascript call like Page_ClientValidate("ValidationGroup")

For example:

function ValidatePage(){
if(Page_ClientValidate("Validate")){ //validate using above validation controls group
      //validation return true section
else{
      //validation return false section
        

Thanks for contributing an answer to Stack Overflow!

  • Please be sure to answer the question. Provide details and share your research!

But avoid

  • Asking for help, clarification, or responding to other answers.
  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.