Formの機械的なSubmitでもValidateをする

2020/07/05 00:16:292020/08/02 15:55:04

InputなどのForm内入力要素では.form.submit()を用いてフォームのSubmitを行うことができるが、これだとフォーム要素に設定されたmin, max, patternなどのバリデーションが一切効かず、FormのonSubmitも発火しない。
これはどうすれば避けられるかというと、フォーム要素に別に生えているrequestSubmit()を用いる。
これを用いると、Formの中に置かれた<button type="submit" />のクリック時と同じ挙動をする。
しかし、Safari他では現時点でrequestSubmitのサポートはないので、フォールバックする。
  • まあどっちにしろrequestSubmitがないようなブラウザではバリデーションのサポートが怪しいが

参考


著者の画像

ci7lus

@ci7lus

Caramelize - Made withCaramelizeand / Privacy