]> git.ipfire.org Git - thirdparty/foundation/foundation-sites.git/commitdiff
Use pull request #11118 from ncoden/fix/abide-ignore-submit-input-9190 for v6.5.0
authorNicolas Coden <nicolas@ncoden.fr>
Sat, 16 Jun 2018 07:51:33 +0000 (09:51 +0200)
committerNicolas Coden <nicolas@ncoden.fr>
Sat, 16 Jun 2018 20:58:48 +0000 (22:58 +0200)
c556dd220 fix: do not validate submit input in Abide
d9d43d403 fix: ignore empty `formErrorFor` in Abide

Signed-off-by: Nicolas Coden <nicolas@ncoden.fr>
js/foundation.abide.js

index c16768edf3c0f6b42e5bfd926568a7880e033f69..4a6741301147350526ee718b76ab9ffbaf350e16 100644 (file)
@@ -31,7 +31,10 @@ class Abide extends Plugin {
    * @private
    */
   _init() {
-    this.$inputs = this.$element.find('input, textarea, select');
+    this.$inputs = $.merge(                               // Consider as input to validate:
+      this.$element.find('input').not('[type=submit]'),   // * all input fields expect submit
+      this.$element.find('textarea, select')              // * all textareas and select fields
+    );
     const $globalErrors = this.$element.find('[data-abide-error]');
 
     // Add a11y attributes to all fields
@@ -138,7 +141,9 @@ class Abide extends Plugin {
       $error = $el.parent().find(this.options.formErrorSelector);
     }
 
-    $error = $error.add(this.$element.find(`[data-form-error-for="${id}"]`));
+    if (id) {
+      $error = $error.add(this.$element.find(`[data-form-error-for="${id}"]`));
+    }
 
     return $error;
   }