Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jQuery Validate Ignore elements with style

I am using jQuery validate for client side validation and I want to ignore any element that has the style="display: none"

$("#myform").validate({
   ignore: "?"
});

What would my selector be for that in the above case?

like image 424
Gabe Avatar asked Apr 12 '10 16:04

Gabe


2 Answers

Note: As of version 1.9.0, ignore: ":hidden" is the default option, so it does not have to be set explicitly anymore.


Use :hidden:

Elements can be considered hidden for several reasons:

  • They have a display value of none.
  • They are form elements with type="hidden".
  • Their width and height are explicitly set to 0.
  • An ancestor element is hidden, so the element is not shown on the page.
$("#myform").validate({
   ignore: ":hidden"
});

Update: for completeness, from the plugin's documentation:

ignore
Elements to ignore when validating, simply filtering them out. jQuery's not-method is used, therefore everything that is accepted by not() can be passed as this option. Inputs of type submit and reset are always ignored, so are disabled elements.

like image 199
Felix Kling Avatar answered Oct 20 '22 16:10

Felix Kling


http://api.jquery.com/hidden-selector/

":hidden"

is what your looking for.

Elements can be considered hidden for several reasons:

  • They have a display value of none.
  • They are form elements with type="hidden".
  • Their width and height are explicitly set to 0.
  • An ancestor element is hidden, so the element is not shown on the page.

I feel this might be better.

like image 20
AjayP Avatar answered Oct 20 '22 16:10

AjayP