プロが教えるわが家の防犯対策術!

javascriptが余り詳しくないので困っています。

<select id="select1" name="select1">
<option value="apple">りんご</option>
<option value="banana">バナナ</option>
</select>

このようなselectの選択リストから値を変更した時にイベントを取得したいのです。
普通に考えると
<select id="select1" name="select1" onChange="xxx">
のようにonChangeを使えば簡単なのですが、
困ってしまうのがこのselectは自動生成されるものなので、
直接手を加えることができないのです。

なのでselect文には手を加えずに、値が変更されたときに
何か関数を呼び出すようなことをしたいのです。

無理ならしょうがないのですが、何か手があれば教えてください。
よろしくお願いします。

A 回答 (1件)

イベント処理は後から追加する事もできます。


例えば、そのselectがページ内に一つ(目)であれば
<script type="text/javascript">
window.onload=function(){
Object = document.getElementsByTagName('select')[0];
//↑ページ内のselectの[0]番目を得る
Object.onchenge=function(){onchangeで呼び出したい関数()}
//↑onchangeイベントの処理を追加する
}
</script>
    • good
    • 1
この回答へのお礼

なるほど!イベント処理は後からでも追加できるんですね。
こういうのが欲しかったんですよ。

ちなみに
Object.onchenge=function(){onchangeで呼び出したい関数()}
    ↑onchangeじゃないと動かないですよね。

ありがとうございます。

お礼日時:2007/05/27 02:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!