- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB.NETでブラウザのフォームに入力する方法について)
VB.NETでブラウザのフォームに入力する方法について
このQ&Aのポイント
- VB.NETでブラウザに表示されたWEBページのフォームにデータを入力したり、ラジオボタンの設定をしたりしたいのですが、入力内容によってフォームの入力欄がEnabled = True や Falseに切り替わる入力欄がある場合、VBでそのエレメントにデータを設定してもフォームを送信などをした際に反映されていません。
- 例えばラジオボタンで選択A、選択B、その他という3つの選択があって、その他を選択すると、テキスト入力エリアが入力可能になるというフォームです。
- ブラウザに直接手動で設定を変更すれば、入力欄のEnabledが切り替わるのですが、VBでラジオボタンを設定した場合は切り替わらず、Enabled = False の状態のままVBでデータを設定しても受け付けられないようです。この為、VBでデータを設定した際に、別の欄のEnabledの状態を変えたいのですが、どのような方法でやれば良いでしょうか。ご教授いただければ幸いです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
そのサイトの構造がどうなっているかに依存するような気がします 単にラジオボタンのclickイベントが登録されてるなら ブラウザのDocument(またはDomDocuemnt)からそのラジオボタンのclickイベントを実行すればいいように思います dim domDoc as mshtml.HtmlDocuemnt domDoc = oIE.Docuemnt.DomDocument domDoc.GetElementsByName("rd1").Item(0).click() Threding.Sleep( 200 ) doDoc.GetElementbyId("txt1").value = "test" といった具合で ・・・
お礼
redfox63様ご回答ありがとうございます。 この方法で正常に入力を反映させることができました。 この方法ですと、入力途中でメンバが出て便利ですね。 良い方法を教えて頂きありがとうございました。