uwp
Использование JavaScript в WebView
Поиск…
Вступление
В этом документе показано, как вы можете использовать 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()
- для имитации щелчка
замечания
Получение 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