DOBON.NETプログラミング道掲示板
(現在 過去ログ2 を表示中)
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
[
最新記事及び返信フォームをトピックトップへ
]
[ トピック内全3記事(1-3 表示) ] <<
0
>>
■33835
/ inTopicNo.1)
VB.NetのWebBrowserでJavaScriptを呼び出したい
▼
■
□投稿者/ さむず
一般人(1回)-(2018/04/24(Tue) 12:09:21)
環境/言語:[VB.Net 2010]
分類:[.NET]
VB.Net2010のWebBrowserでJavaScriptを呼び出す時に、オブジェクトを渡したいのですが、
方法が判りません
下記例では、関数にフォームを渡すサンプルHTMLです
ボタンをクリックすると、値を表示します
<SCRIPT language=JavaScript>
<!--
function test1(docSrc) {
alert(docSrc.hoge.value);
}
-->
</SCRIPT>
<FORM method=post name=SFORM>
<INPUT type=hidden name=hoge value='testmessage_1'><br>
<INPUT type=button onClick=test1(self.SFORM); value='test1_exec'><br>
</FORM>
これを、VB.Netより呼び出す時、下記の様な記述ではスクリプトエラーとなって
しまいますが、どう記述すれば良いのでしょうか?
WebBrowser1.Document.InvokeScript("test1", {IE.Document.All("SFORM")})
WebBrowser1.Document.InvokeScript("test1", {"self.SFORM"})
引用返信
削除キー/
編集
削除
■33836
/ inTopicNo.2)
Re[1]: VB.NetのWebBrowserでJavaScriptを呼び出したい
▲
▼
■
□投稿者/ Hongliang
大御所(542回)-(2018/04/24(Tue) 12:42:29)
> WebBrowser1.Document.InvokeScript("test1", {IE.Document.All("SFORM")})
IEって何のオブジェクトでしょうか。
とりあえず同じWebBrowser1.Document上の要素を渡すとすると、
WebBrowser1.Document.All("SFORM").DomElement
のように要素を指すHtmlElementオブジェクトのDomElementプロパティを渡す必要があります。
DomElementが返すものが内部で使用されているもので、それを.NETから扱えるようにラップしたのがHtmlElement、という感じです。
あるいは全部evalでやっちゃうというのも。
.InvokeScript("eval", { "test1(self.SFORM)" })
引用返信
削除キー/
編集
削除
■33837
/ inTopicNo.3)
Re[2]: VB.NetのWebBrowserでJavaScriptを呼び出したい
▲
▼
■
□投稿者/ さむず
一般人(2回)-(2018/04/24(Tue) 23:59:53)
2018/04/25(Wed) 00:02:08 編集(投稿者)
失礼しました。IE→WebBrowser1、でした
そしてありがとうございます。下記の方法でできました。
WebBrowser1.Document.InvokeScript("test1", {WebBrowser1.Document.All("SFORM").DomElement})
それと、evalの方法でも成功しました
困っていたので本当に感謝いたします。
ただDomElementが何者なのか全く判らず、evalも始めて知ったのですが、
こういった事を学習するには何を勉強すれば良いのでしょうか?
調べた時は、DOM?とかのキーワードが出てきますが、そういう書籍等を
購入すれば良いのか、JavaScriptを学習すれば良いのかも判りませんが、
もしこういうものを学習すれば良いというものがあればご教授ください
解決
済
み!
引用返信
削除キー/
編集
削除
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
過去ログには書き込み不可
Mode/
通常管理
表示許可
Pass/
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
-
Child Tree
-