Поиск…


Вступление

В этом документе показано, как вы можете использовать JavaScript в WebView.

Этот документ охватывает: Получение HTML из WebView, ввод текста в текстовое поле на веб-сайте, имитация щелчка, чтобы нажать кнопку веб-сайта

Синтаксис

  • await webView.InvokeScriptAsync("eval", new string[] { functionString }) - для использования JavaScript
  • .documentElement - получить ссылку на корневой узел документа
  • .getElementsByClassName(Class_Name) - для получения элементов usign Имя класса
  • .getElementsByTagName(Tab_Name) - для получения элементов с использованием имени тега
  • .getElementById(ID) - для получения элемента с использованием идентификатора
  • .nodeName - получить имя узла
  • .childNodes - для получения дочерних элементов
  • .outerHTML - Получить внешний HTML- .outerHTML
  • .innerHTML - Получить внутренний HTML
  • .innerText - Получить или установить InnerText
  • .click() - для имитации щелчка

замечания

Вот пример приложения LogIn для StackOverFlow

Получение HTML из WebView

Используйте .outerHTML чтобы получить HTML

Вот пример кода, чтобы получить весь 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