Turns out that the "positive look ahead" syntax (?=.*\d) is buggy in
IE6.

I have a workaround which is good enough: chaining together simpler
regular expressions:

return this.optional(element) || ( (/^[^\W]*$/.test(value)) && (/^.
{8,255}$/.test(value)) && (/[a-z]+/.test(value)) && (/[A-Z]
+/.test(value)) && (/[\d]+/.test(value)) );





On Nov 11, 11:14 am, dk <[EMAIL PROTECTED]> wrote:
> Thanks for a great validation plugin!
>
> Writing my first custom validation:
>
> <script>
>       $(document).ready(function(){
>         jQuery.validator.addMethod("adminPwd", function(value,
> element) {
>             return this.optional(element) || /^(?=.*\d)(?=.*[a-z])(?
> =.*[A-Z])(?!.*\s)(?!.*\W).{8,255}$/.test(value);
>         }, "The password must contain lower case, upper case and
> number(s) and be at least 8 characters");
>         $('#userForm').validate();
>       });
> </script>
>
> The aim is that the password must contain at least one lower case, one
> upper case and one number. Spaces are not allowed. Lenght at least 8
> characters
>
> This works in FF3 but not in IE6. I suspect some regular expression
> incompability in IE6 but I don't know how to debug it to pinpoint
> exactly which part of the RE fails.
>
> Any workarounds would be appretiated!
>
> dk

Reply via email to