LoginSignup
0
1

More than 5 years have passed since last update.

Validation-Engine 特定の場所で発火しないようにする

Posted at

備忘録

自分用への使い方メモ

vilidation-Engineとは

JavaScriptで使用するプラグインの一つ

---特徴---
Form周りのバリデーションをリアルタイムに行ってくれる
バリデーションに引っかかった場合には吹き出しにてユーザーに知らせてくれる

使い方

[https://qiita.com/Lui/items/4154161d511026730dc5]
この記事を参考に作成。
Validation-EngineはファイルDLかCDNでできる。
カスタマイズ性がほしいならファイルDLが確実。

今回の経緯

とある案件で、Validation-Engineを使用していた。
使用していたページではログイン機能も併設していて、ログインする際にsubmitでサーバーとの通信を行う仕様になっていた。Validation-Engineを使用していたのでsubmitを押すと同じform内のため発火されてログインがされない状態が起こってしまった。

色々記事を見てみたが発火を止めるような記事がここにはなかったので備忘録として今回記事作成をした。

やりたい事
ログインbuttonのsubmit押下時にはVilidation-Engineを発火させないようにする。

発火を止めるには

日本語での記事では

$('hoge').validationEngine('hide');
//指定したいform名もしくはIDなどを指定してhideをする

みたいなのをよく見かけた。とりあえず使ってみて、、、、吹き出しが出ないけどこれ発火してるな、、、ってなってなんぞって。。。って公式ドキュメント見たら、、、

hide
The hide method can be applied to a form or a field.
It closes/hides error prompts.

// closes all form prompts
$('#formID1').validationEngine('hide');

// closes onle one prompt
$('#email1').validationEngine('hide');

とのこと。
吹き出しだけ隠すよーってことだと思ってる(英語苦手なので、、、)

なので
これはだと意味がないのでさらに何かないかと公式を読んでみると普通に書いてあった

detach
Unregisters any bindings that may point to jQuery.validaitonEngine.

$("#formID1").validationEngine('detach');

$('#form1').validationEngine('detach');

detachで発火をさせないとのこと。

$("#formID1").validationEngine('attach'); //発火させる
$("#formID1").validationEngine('detach'); //発火を止める

ログインボタン押下時の処理に発火を止めるを記述したらいけました。

結果として公式は最強なのでプラグイン使うときにはちゃんと読まないとと再認識しました。

公式ドキュメント

[https://github.com/posabsolute/jQuery-Validation-Engine]

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1