The rules method applies to individual elements, not the whole form. Call it
directly on the age-field, and it should work.

Jörn

On Fri, Dec 4, 2009 at 1:34 PM, Eva <eva.villarr...@gmail.com> wrote:

> Hi all,
>
> I get an error when using rules('remove') from Jörn Zaefferer's
> Validate plugin.
>
> The error is:
>
> elem is undefined
> [Break on this error] var id = elem[ expando ];\r\n
>
> The code is:
>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>                    "http://www.w3.org/TR/html4/loose.dtd";>
> <html>
> <head>
>  <script src="http://code.jquery.com/jquery-latest.js";></script>
>
>  <script>
>  $(document).ready(function(){
>    $("#myform").validate({
>        rules: {
>        'fname': "required",
>        'lname': { required: true }
>      },
>      messages: {
>        'fname': "Name is required",
>        'lname': "Lastname is required"
>      },   errorLabelContainer: "#messageBox",
>   wrapper: "li",
>   submitHandler: function() { alert("Submitted!") }
> })
>  });
>  </script>
>
>  <script>
>        function change() {
>                alert('changing rules');
>                $("#myform").rules('remove');
>                $("#myform").rules('add', {
>                                                'age': {
>                                                        required : true,
>                                                        messages : {
> required: "Age required"}
>                                                         }
>                                                 }
>                                          );
>        }
>  </script>
>
> </head>
> <body>
>  <script type="text/javascript" src="http://dev.jquery.com/view/trunk/
> plugins/validate/jquery.validate.js<http://dev.jquery.com/view/trunk/%0Aplugins/validate/jquery.validate.js>
> "></script>
> <ul id="messageBox"></ul>
>  <form id="myform" action="/login" method="post">
>   <label>Firstname</label>
>   <input name="fname" />
>   <label>Lastname</label>
>   <input name="lname" />
>   <label>Age</label>
>   <input name="age" />
>   <label>Adress</label>
>   <input name="address" />
>   <br/>
>   <input type="submit" value="Submit"/>
>   <input type="submit" value="Other Submit" onclick="change();"/>
>  </form>
> </body>
> </html>
>
>
> I've missed something or it's a bug in the plugin?
>
> Thanks in advance.
>
>

Reply via email to