React の input
フィールドに使用できるイベントハンドラーは、基本的に HTML のフォームイベントハンドラーに基づいています。以下に主要なイベントハンドラーを一覧で紹介します。
フォーカスおよび入力関連のイベント
- onFocus: 要素にフォーカスが当たったときに発火します。
- onBlur: 要素からフォーカスが外れたときに発火します。
- onChange: 値が変更されたときに発火します。これは通常の入力変更時に使われます。
- onInput: 入力値が変更されたときに発火します(onChange と似ていますが、ブラウザによって動作が異なる場合があります)。
- onSelect: テキストを選択したときに発火します。
- onSubmit: フォームが送信されたときに発火します(フォーム全体に適用)。
キーボード関連のイベント
- onKeyDown: キーを押したときに発火します。
- onKeyPress: キーを押している間に発火します(通常、onKeyDown の代わりに onKeyPress を使わないことが推奨されます。モダンなブラウザでは onKeyDown に統一されています)。
- onKeyUp: キーを離したときに発火します。
マウス関連のイベント
- onClick: クリックしたときに発火します。
- onDoubleClick: ダブルクリックしたときに発火します。
- onMouseDown: マウスボタンを押したときに発火します。
- onMouseUp: マウスボタンを離したときに発火します。
- onMouseEnter: マウスが要素に入ったときに発火します(onMouseOver と似ていますが、子要素には影響しません)。
- onMouseLeave: マウスが要素から離れたときに発火します。
- onMouseMove: マウスを動かしたときに発火します。
- onMouseOver: マウスが要素の上にあるときに発火します(子要素にも影響します)。
クリップボード関連のイベント
- onCopy: コピー操作が行われたときに発火します。
- onCut: カット操作が行われたときに発火します。
- onPaste: ペースト操作が行われたときに発火します。
その他
- onContextMenu: コンテキストメニュー(右クリックメニュー)が表示されたときに発火します。
- onDrag: ドラッグ操作が行われたときに発火します。
- onDrop: ドロップ操作が行われたときに発火します。
これらは基本的なイベントハンドラーであり、Reactではこれらを直接 input
要素に指定して使用することができます。各イベントはすべてキャメルケースで指定され、関数で処理します。