天天看點

jQuery Validate 無法驗證 chosen-select元素

chosen-select元素執行了chosen()方法後,為select元素加上了

style="display: none;"

進行隐藏,然後重新構造了一個看起來像select的下拉清單。

而jQuery Validate預設忽略對隐藏元素進行校驗,是以我們要把select排除。在validate()方法的參數中增加ignore屬性,将select從忽略的隐藏元素中剔除。

$("select").validate({ignore: ":hidden:not(select)"});

:hidden 選擇器選取隐藏的元素。 以下幾種情況的元素是隐藏元素:
  • 設定為 display:none
  • 帶有 type=”hidden” 的表單元素
  • width 和 height 設定為 0
  • 隐藏的父元素(這也會隐藏子元素)

    注釋:該選擇器對 visibility:hidden 和 opacity: 0 的元素不起作用。