HTMLInputElement: search イベント

非標準: この機能は標準化されていません。非標準の機能はブラウザーの対応が限られ、将来的に変更または削除される可能性があるため、本番環境での使用は推奨されません。ただし、標準の選択肢が存在しない特定のケースでは、有効な代替手段となる場合があります。

search イベントは、 <input> 要素の type="search" にて検索が開始されたときに発生します。

検索を開始する方法はいくつかあり、例えば、 <input> にフォーカスがある時に Enter を押したり、incremental 属性が存在すれば、最も新しいキー入力から UA 定義のタイムアウト時間が経過してから検索が開始されます(新しくキー入力をするとタイムアウトがリセットされるので、イベントが繰り返して発生します)。

現在 UA が <input type="search"> を実装している方法では、フィールド内をクリアするために追加のコントロールを置きます。このコントロールを使用しても search イベントが発生します。この場合、 <input> 要素の value は空文字列になります。

このイベントはキャンセル不可です。

構文

このイベント名を addEventListener() 等のメソッドで使用するか、イベントハンドラープロパティを設定するかしてください。

js
addEventListener("search", (event) => {});

onsearch = (event) => {};

イベント型

一般的な Event です。

js
// addEventListener 版
const input = document.querySelector('input[type="search"]');

input.addEventListener("search", () => {
  console.log(`The term searched for was ${input.value}`);
});
js
// onsearch 版
const input = document.querySelector('input[type="search"]');

input.onsearch = () => {
  console.log(`The term searched for was ${input.value}`);
};

仕様書

このイベントは仕様書に含まれていません。

ブラウザーの互換性