JSでイベントを動的に定義

JSで「obj.onkeypress = function(){***}」みたく、動的にイベントを定義する。

入力チェックで、キー入力項目をリアルタイム監視する。
どこかのユーザ登録フォームで、テキストフィールドの枠線を色付けする事でエラーかどうかをリアルタイムで監視してた。
メールアドレスの入力欄なら、不正なアドレスの間は枠線が赤で、あり得るアドレスになると緑色みたいに。

で、これ自体は割と簡単に実装できた。
ただ、折角なのでHTML内にイベントを書くのをやめてみようかと(IDを基準にイベントをマッピング?)。
ここではまった。
obj.onkeypressは問題ないけど、obj.onKeyPressは問題。
特にエラー表示されないからやっかい。
イベントハンドラはJS側に書く場合全て小文字じゃないと駄目。
これに気づけずに、obj.addEventListenerとかよく分からないままに使ったりしたからもうパニック。
結局、全て小文字にして解決。
HTMLとJSでは、大文字小文字の解釈ルールが違うってことすっかり忘れてた。

さて、リアルタイム監視とIDとイベントのマッピング(?)は出来た(ブラウザ検証はまだ)。
あとはどこかで見た、郵便番号とかの固定長複数ブロックの自動フォーカス移動に挑戦。
基本的に入力中のフィールドに対してキープレスを監視すれば出来るはず。

プロフィール

このブログ記事について

このページは、koshigoeが2005年10月16日 22:46に書いたブログ記事です。

ひとつ前のブログ記事は「Feed on P2Pを懲りずに考えてみる」です。

次のブログ記事は「プレーオフが熱い」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。