JavaScript
今度は「入力欄の内容にしたがって別の箇所の表示を変更する」という、割と簡単そうなスクリプトを用意する事になった…が、思ったより難しい。
普通に考えると「onChange」にスクリプトを書いてやればいいと思うのだが…実はこれだと「テキスト入力欄の内容が変わった後、その欄からフォーカスが外れるまではChangeイベントが発行されない」という大問題がある。*1
仕方がないので別のイベントを探すと…次は「onKeyup」。テキスト入力欄で文字を打つたびに発生するわけだから、これでいけそうなものだが…「途中まで入力したところでブラウザのドロップダウンメニューを使うと、Keyupイベントが発生しない」という問題が。いや、たしかにKeyupはしていませんよね…でもMouseupも発生しないのは何故なんでしょう。*2
もう面倒くさいので、「onKeyupをセットした上で、タイマーイベントを使って定期的にチェックする」ということにしてしまいそうだ…