2
votes

I have a form that changes the inputs displayed on screen depending on a drop down list value.
This ignore definition works fine and does not validate any inputs with ignore class and that are not visible.

ignore: ":not(:visible), .ignore",

But the problem now is when I want to validate a few hidden inputs with class 'validate' , so I changed this to:

ignore: ":hidden:not(.validate), :not(:visible), .ignore",

But the :not(:visible) blocks it. How to apply these 2 rules together so I will be able to ignore not visible inputs and validate hidden inputs with 'validate' class?

2
FYI - "not visible" means "hidden", which includes, type="hidden", display:none and most other common techniques that hide the element from view. I'm making this point because the plugin already ignores these things by default using :hidden.Sparky

2 Answers

4
votes

If you want to ignore all hidden elements, but still validate any hidden element with the .validate class, it's simply the default :hidden selector with the .validate class excluded...

ignore: ":hidden:not(.validate)"

DEMO: jsfiddle.net/0avft8ou/

You probably don't need an .ignore class because the plugin will automatically ignore any hidden element.

-1
votes

Try changing your first rule as

ignore: ":not(:visible), :not(:hidden), .ignore"