oninvalid - 送信の失敗時に発火する
投稿日:
JavaScriptの、イベントハンドラのoninvalid
は、送信の失敗時に発火して処理を実行します。
説明
イベントハンドラのoninvalid
は送信の失敗時に発火します。入力間違いがあると、フォームの送信ボタンが効きません。入力間違いとは、例えば、type属性がurl
の入力フォームで、URLアドレス以外のテキストを入力することを指します。このような入力間違いがあると、ブラウザはフォームの送信時にバリデーション機能により間違いを検知して送信をキャンセルします。このタイミングで、イベントが発火して処理が実行されます。
サンプルコード
<input id="target">
// 要素を取得
var inputElement = document.getElementById( "target" ) ;
// 処理を定義
var action = function() {
// 処理内容
}
// イベントを設定 ( addEventListener )
inputElement.addEventListener( "invalid", action ) ;
// イベントを削除
inputElement.removeEventListener( "invalid", action ) ;
// 要素を取得
var inputElement = document.getElementById( "target" ) ;
// イベントを設定 ( oninvalid )
inputElement.oninvalid = function() {
// 処理内容
}
// イベントを削除
inputElement.oninvalid = null ;
デモ
各フォームにoninvalidイベントを設定しました。type属性がurl
の入力フォームで入力間違いをしたまま、送信ボタンを押してみて下さい。イベントが発生するごとに、発生回数がカウントアップされます。
関連項目
- Location - ブラウザロケーションのオブジェクト。
- Location.assign() - コンテンツをロードして表示する。
- Location.reload() - ドキュメントをリロードする。
- Location.replace() - 現在のURLを置換する。
外部リンク
- HTML Living Standard - WHATWGによる仕様書。