I've changed my code to use addMethod, but I'm not terribly happy with
the way it's working out.  Would it be possible to use addMethod to
create a validation function to which I could pass a 2nd parameter
being the regular expression.  If so, what would the rules: entry look
like?

On Dec 5, 5:14 pm, "Jörn Zaefferer" <[EMAIL PROTECTED]>
wrote:
> You can safely remove the first modification, thats not necessary. Its
> used for required only to move the method to the front (which is
> actually a bad workaround). Anyway:
>
> I've commented on regex-methods 
> here:http://docs.jquery.com/Plugins/Validation/Validator/addMethod#namemet...
>
> Please note: While the temptation is great to add a regex method that
> checks it's parameter against the value, it is much cleaner to
> encapsulate those regular expressions inside their own method. If you
> need lots of slightly different expressions, try to extract a common
> parameter. A library of regular 
> expressions:http://regexlib.com/DisplayPatterns.aspx
>
> Jörn
>
> On Fri, Dec 5, 2008 at 8:01 PM, skidmarek <[EMAIL PROTECTED]> wrote:
>
> > I've created a useful addition to your class that you may want to
> > include in a future version.
>
> > Set the value of the regex attribute to a regular expression.  If any
> > characters in the input don't match the regex, it returns false.  Very
> > handy.
>
> > Here's the source:
>
> > ------------------------------------------- In rules:
>
> > if (data.regex) {
> >            var param = data.regex;
> >            delete data.regex;
> >            data = $.extend({regex: param}, data);
> > }
>
> > ------------------------------------------- Then in methods:
>
> > regex: function(value,element,param) {
> >            if (param) {
> >                var expression = new RegExp(param, "g");
> >                return (value.replace(expression,"").length==0);
> >            } else {
> >                return true;
> >            }
> > },
>
> > ------------------------------------------- Usage:
>
> > regex: "\\b[a-zA-Z0-9()[EMAIL PROTECTED]"'?&* ]+\\b"
>
> > If the input contains any characters that aren't in that list, it
> > validates as false.

Reply via email to