サーチ…


前書き

このドキュメントでは、WebViewでJavaScriptを使用する方法を説明します。

このドキュメントでは、WebViewからHTMLを取得する、Webサイトのテキストボックスにテキストを入力する、SimulateをクリックしてWebサイトのボタンをクリックする

構文

  • await webView.InvokeScriptAsync("eval", new string[] { functionString }) - JavaScriptを使用する
  • .documentElement - ドキュメントのルートノードへの参照を取得する
  • .getElementsByClassName(Class_Name) - 要素を取得するクラス名を取得する
  • .getElementsByTagName(Tab_Name) - タグ名を使用して要素を取得する
  • .getElementById(ID) - IDを使用して要素を取得する
  • .nodeName - ノード名を取得する
  • .childNodes - 子要素を取得する
  • .outerHTML - 外部HTMLを取得する
  • .innerHTML - 内部HTMLを取得する
  • .innerText - InnerTextを取得または設定する
  • .click() - クリックをシミュレートする

備考

StackOverFlowへのLogInへのサンプルアプリケーションはこちら

WebViewからHTMLを取得する

.outerHTMLを使用してHTMLを取得する

ここでは、WebサイトのHTML全体を取得するためのコードサンプルを示します

private async void GetHTMLAsync()
{
    var siteHtML = await webView.InvokeScriptAsync("eval", new string[] { "document.documentElement.outerHTML;" });
}

ウェブサイトのテキストボックスにテキストを入力する

.innerTextを使用して値を設定する

Bingのウェブサイトの検索ボックスにテキストを入力するためのコードサンプルを示します

private async void EnterTextAsync(string enterText)
{
    var functionString = string.Format(@"document.getElementsByClassName('b_searchbox')[0].innerText = '{0}';", enterText);
    await webView.InvokeScriptAsync("eval", new string[] { functionString });
}

ウェブサイトのボタンをクリックするとシミュレートする

.click()を使用してクリックをシミュレートする

Bingウェブサイトの検索ボタンをクリックするコードサンプル

private async void SimulateClickAsync()
{
    var functionString = string.Format(@"document.getElementsByClassName('b_searchboxSubmit')[0].click();");
    await webView.InvokeScriptAsync("eval", new string[] { functionString });
}


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow