LoginSignup
1
1

2重クリック防止(簡易?)

Posted at

ふと2重クリックが気になって、Saveボタンを連打したら、いとも簡単に2重、3重の登録が行われました。

2重クリックで検索するとJavaScriptを用いた解説等がありましたが、極力コードを書かないローコードでやってみたので紹介します。

(Varidationでエラーがあった時等は、もう一度クリックできるようにしなければなりませんが、ちゃんと制御しないとそれがまた2重クリック発生の要因になります。)

Screenを右クリックし、Add Local Variableを選択。
名前をIsClick、Data TypeはBooleanにします。
image.png

SaveDetailのClient Actionを開き、Startのすぐ下にAssignを配置、クリックしたらIsClickがTrueになるようにします。
image.png

Startと配置したAssignの間に、Ifを配置し、ConditionにIsClickを入れ、TrueでEndに向かうようにします。
これで2重クリックが防止できます。
image.png

Form!.Valid?のFalseの線の上に、Assignを配置し、IsClickがFalseになるようにします。
これでValidationエラーがあった時は、もう一度Saveボタンが押せるようになります。
image.png

なお、これはSaveボタンが成功した時はIsClickをFalseに戻したりはしませんので、別の画面に遷移してしまうことが前提です。

高速クリックでテストしてみましたが、今のところ重複登録はされません。
(高橋名人がやったら分かりませんが)

1
1
1

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
1
1