三流君 ken3のmemo置き場

メモ置き場、保管庫として利用。まとまっていませんがヨロシク



XXXXXさんへ もしかして、OPTIONタグに.FireEvent ("OnChange")は無いのかも?

前回、未解決
ken3memo.hatenablog.com
の続き・・・

こんにちは。
html option onclick
のキーワードで検索すると、

【JavaScript】プルダウンメニューを選択しただけで、画面遷移をさせる。 - Qiita
セレクトボックスで onclick っぽいことやってみた: 迷子の古事記
セレクトボックスでナビゲーション-JavaScript入門
JavaScriptの動かないコード (中級編) ラジオボタンとプルダウンのonchangeイベントがおかしい - 主に言語とシステム開発に関して
など、イロイロとJavaScriptのサンプルが見つかります。


OPTION タグには、
もしかして、
("OnChange")
のイベントは無く、
親の
SELECTタグの("OnChange")を発生させないとダメなのかもしれません。
'↑親の SELECTタグにOnChangeのイベントが記載されているのかも?

元のソースコード

For Each Obj In ObjIE.Document.getElementsByTagName("OPTION")
    If Obj.Value = "Black Gunmetal" Then
        Obj.Selected = True
        Obj.FireEvent ("OnChange")  '←そもそも、このイベントが無いので
        '↑親の SELECTタグにOnChangeのイベントが記載されているのかも?
        Exit For
    End If
Next

単純に
三流君VBA:IE操作 .parentElement で親のタグを参照?
http://www.ken3.org/vba/backno/vba180.html
で動作するかわかりませんが、

For Each Obj In ObjIE.Document.getElementsByTagName("OPTION")
    If Obj.Value = "Black Gunmetal" Then
        Obj.Selected = True
        Obj.parentElement.FireEvent ("OnChange")  '←一つ上エレメントのOnChange起動?
        '↑親の SELECTタグにOnChangeのイベントが記載されているのかも?
        Exit For
    End If
Next


.parentElement.FireEvent ("OnChange")
で起動できたらラッキーなのですが、

はずしていたらすみません。
解決の糸口となれば幸いです。  三流プログラマー Ken3